一 git add
Git 通过提交暂存区来实现对提交的定制。 所以提交以前要先 用git add 命令将修改提交到缓存区。
1) git add -A 保存所有的修改
2) git add . 保存新的添加和修改,但是不包括删除
3) git add -u 保存修改和删除,但是不包括新建文件。
我比较习惯用git add -u 将文件修改提交到暂存区。
二 git diff --cached
查看暂存区的修改。
三 git checkout
git checkout 是git检出命令。 它的主要作用是建立和切换分支。
但是它还有另一个作用。 git checkout xxx 将某个文件恢复到修改之前(最后一次snapshot)。git checkout . 会恢复所有的文件到修改之前的状态。 但是这种要慎用,以免做无用功。
四 git commit
git commit 来将当前的改动真正的保存下来, 生成一个新的snapshot。
git commit -s -m "提交描述”
git commit -s -m "提交描述” --amend (重新提交, 会覆盖你的上一个提交)
五 git branch
查看分支命令
1. git branch -r 查看远程分支
2. git branch -a 查看所有分支(远程分支+本地分支)
3. git branch -v 查看branch的时候显示每一个分支的最后一个commit 信息。
六 Rebase
当你需要向远程代码库中提交你的修改的时候, 当你完成了一个改动以后,你发现别人已经在远端主代码仓库添加了很多改动了,这时候很可能会有代码冲突。 这时就用到Rebase 命令了。
这时你需要做的是:
1. 从远端获取最新的代码。
2. git rebase xxx 跟新你当前branch的最新状态, 然后在此基础上添加你的修改。
3. 向远程代码库提交修改。
七 查看修改历史 git log
git log 查看项目从当前(最后一个sanapshot)之前的历史记录。
git log File_name 查看指定文件的修改历史。
git log branch 查看指定的branch的修改记录。
八 撤销本地修改
git checkout *.java 撤销某个文件的本地修改
九 撤销提交
git log 查看你的提交ID
git reset --hard commit_id 撤销提交。
十 git 冲突解决
当使用git cherrypick 或者 git revert 时,经常报冲突
这时 的解决方法是:
1) 手动修改文件, 解决冲突。
2) git add -u
3) 继续revert 或者cherrypick
比如:git revert --continue。