十一: git常用命令
1 Git diff:
如果希望对比暂存区和当前的 HEAD,那么使用
git diff --cached
普通的 git diff 命令默认对比的是没有加到索引中的文件。
2 恢复暂存区
如果已经将一些文件添加到暂存区后又后悔了,Git 提供了多个命令来实现这个功能,具体需要根据当时情况而定。
git rm path/to/file --cached // 删除这个文件从暂存区,但是工作区会有
命令将文件从暂存区索引中删除,但是仍然会将文件保留在工作目录。这比直接使用
git rm file -f // 直接干掉,工作区也没有
命令完全删除文件会安全一点。
3 Git commit
- 获取commit id
git log
- 查看commit内容
git show commit_id
- 查看最近n次提交的修改
git log -p -n
指定n为1则可以查看最近一次修改的内容
3 Git reset
恢复一些已经提交的改动,使用
git reset --hard // 恢复工作目录的,和 暂存区的,都会被撤销
git reset --mixed(和git reset一样的的效果, 是默认的行为) // 把暂存区的 修改回退到 工作区)
git reset --soft ??????
git reset --hard COMMIT_ID // 恢复到指定的版本, COMMIT_ID之后的都会被撤销。
4 Git stash
git stash list // 列出所有的stash
git stash clear // 清空所有stash
git stash // 能把缓存区和工作区的都给stash了。
git pop 0 // 取得第一个stash的东西。
5 Cherry-pick
假设我们和同事在各自单独的分支上进行开发,同事有一个重要的提交我们也想应用到自己的分支上来,但是不需要对方分支的其他提交。这时我们可以使用
git cherry-pick COMMIT_ID