一、查看命令
git log 查看提交记录
git status 查看工作区与暂存区状态
二、文件操作
git add file-name 将file-name文件加入暂存区(file-name可以用.替换,表示所有工作区修改都提交到暂存区)
git commit -am "注释" 将暂存区所有修改提交
git checkout file-name 撤销file-name在工作区的修改
git rm file-name 删除某个文件
git diff 查看所有文件修改
三、分支操作
git branch -a 查看全部分支
git branch tmp 创建tmp分支 (-d删除,-D强制删除)
git checkout -b tmp 创建tmp分支并切换到tmp
git checkout -b tmp origin/tmp 拉取远端tmp分支到本地
git checkout test 切换到test分支
git fetch origin 更新远程的分支和标签
git pull origin test 更新test分支的本地仓库
git push origin test 推送test分支本地仓库到远程仓库(-f强制推送到远程仓库)
git merge tmp 将tmp分支合并到当前分支
git branch -D tmp 删除本地tmp分支
四、commit-id相关
git show commit-id 查看某个commit-id的修改
git revert commit-id 撤销某个commit-id的修改
git reset --hard commit-id 本地仓库回退到某个commit-id
git reset HEAD^ 撤销当前本地仓库的commit提交内容,回到工作区
git cherry-pick commit-id 将某个commit-id添加到当前分支
git rebase 合并多个commit
git rebase -i commit-id 将要合并的开始commit-id生成一个文件
在文件中选择要保留哪个commit,合并哪个commit,删除哪个commit
保存文件,自动执行
有冲突,则git status 查看冲突文件,修复冲突
修复完成,git add 加入之后git rebase --continue
四、bug分支
git stash 将本地修改存起来
git stash list 查看所有存起来的内容
git stash apply stash-id 使用某个stash-id的内容
git stash pop stash-id 弹出并使用某个stash-id的内容
git stash drop stash-id 删除某个stash-id的内容
五、标签管理
git tag tag-name 打标签
git push --tag 推送全部标签
git tag -d tag-name 删除标签
六、子项目管理
git submodule add 仓库地址 路径
git submodule init 初始化子项目
git submodule update更新子项目