第三方登录
git diff branch1 branch
git diff --cached
git diff命令默认对比的是没有加到索引中的文件。
git rm path/to/file --cached
git rm file -f
git reset
git reset --hard
git reset --mixed
git reset命令的默认行为。混合的重置会保留当前工作目录中的改动。最后,如果仅仅希望修改分支的 HEAD,可以通过
git reset --soft
git reset命令的时候,我们可以指定多个目标文件作为参数传入。当然可以通过
git reset --hard COMMIT_ID
git stash命令并不陌生,它可以通过
git stash pop命令方便的将之前的改动恢复回来。然而,如果工作目录中有未追踪的文件,默认情况下是不会将其存入临时储藏区的。为了能够临时保存未追踪的文件,可以使用
git stash --include-untracked另外一个非常有用的命令是
git stash list
git log --graph --decorate --oneline
git show COMMIT_ID/HEAD/BRANCH
git blame path/to/file
git diff命令,它也是一个查看历史的工具。例如,如果需要对比当前 HEAD 和前两个提交,可以使用
git diff HEAD HEAD~2
git log --patch
git log --grep apples --oneline
git log HEAD~5..HEAD^ --oneline
git log branch_name..master --oneline修复错误提交
git commit --amend
git rebase -i origin/master
1 pick 80f2a48 Add feature X
2 squash 2c74ea2 Add junit tests for feature X
3 squash 4k81nm5 Bugfix for feature X
git revert COMMIT_ID
git reflog命令就是用来实现这个功能的。挑拣提交(cherry-pick)
git cherry-pick COMMIT_ID
编译:乔乔
本文为 @ 21CTO 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。