提交

提交

Commit | 提交

# 管道命令,可用于脚本
$ git diff-tree --no-commit-id --name-only -r bd61ad98

# 查看某次提交中修改的文件
$ git show --pretty="" --name-only bd61ad98

快速提交

有时候我们希望能一键执行 add、commit、push 这些操作,可以封装为如下的函数:

function lazygit() {
    git add .
    git commit -a -m "$1"
    git push
}

# lazygit "My commit msg"

或者封装为单独的 Git alias 命令:

git config --global alias.cmp '!f() { git add -A && git commit -m "$@" && git push; }; f'

[alias]
    cmp = "!f() { git add -A && git commit -m \"$@\" && git push; }; f"

# 使用方式如下
git cmp "Long commit message goes here"

Tracking | 追踪

查看当前追踪的文件信息:

# 展示所有被追踪的文件
git ls-files -t

# 展示所有未被追踪的分支
git ls-files --others

# 展示所有被忽略的文件
git ls-files --others -i --exclude-standard
git check-ignore *
git status --ignored
# 从工作目录中删除文件,同时会暂存信息
$ git rm [file]

# 从版本控制中移除该文件
$ git rm --cached [file]

# 本地重命名并且提交
$ git mv [file-original] [file-renamed]

Stash | 贮存

git stash – The command saves your local modifications away and reverts the working directory to match the HEAD commit. It allows you to store your uncommited modifications into a buffer area called stash, and deletes it from the branch you are working on. You may later retreive them by applying the stash.

Undo | 撤销

上一页
下一页