提交
提交
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.