一、基本Git命令
Git本地操作
① 提交
git status
git add xxx.txt
git commit -m “[FEAT] Add a new file.”
git log --pretty=oneline
② 版本回退
HEAD指向的版本就是当前版本
git reset --hard commit
git log
git reflog 查看未来版本
③ 查看修改
git diff HEAD – readme.txt
④ 撤销修改
撤销文件修改(工作区)
git checkout – readme.txt
撤销文件修改(暂存区)
git reset HEAD readme.txt
重置当前修改(暂存区 + 工作区)
git reset --hard
Git远程仓库
① 关联远程仓库
git remote add origin git@server-name:path/repo-name.git
② 推送
git push -u origin master (制定默认主机)
git push origin master
③ 克隆
git clone git@github.com:xxxx/xxx.git
分支管理
基本操作
① 查看分支
git branch
② 创建分支
git branch feature/oneFeature
③ 切换分支
git checkout master
git switch master
④ 创建+切换分支
git checkout -b feature/oneFeature
git switch -c feature/oneFeature
⑤ 合并分支
git merge feature/oneFeature
git merge --no-ff -m “merge with no-ff” feature/oneFeature (不使用Fast Foward模式)
⑥ 删除分支
git branch -d feature/oneFeature
解冲突
① 查看冲突
git status
both modified:
② 查看分支情况
git log --graph --pretty=oneline --abbrev-commit
分支管理策略
master稳定
dev干活,每个开发分支往dev上合并
不同分支开发技巧
① 储藏
git stash (在dev分支上)
git checkout master (master 修改)
git checkout -b bugfix/issue-1
git commit -m “fix bug issue-1”
git checkout master
git merge bugfix/issue-1
git checkout dev
git stash list
git stash apply
git stash drop
git stash pop (恢复同时删除stash内容)
② cherry-pick
git cherry-pick 4c805e2
远程分支
① 查看远程信息
git remote -v
② 推送
git push origin master
git push origin dev
③ 拉取远程分支到本地
git checkout -b dev origin/dev
在本地修改再推送到相同的分支,若别人也修改了分支,推送失败,需要解冲突
④ 拉远端分支刷新
git pull
⑤ 建立本地分支与远端分支链接
git branch --set-upstream-to=origin/dev dev
多人协作流程
1、git push origin feature/function1
2、push失败:git pull
未建立链接? git branch --set-upstream-to=origin/feature/function1 function1
3、解冲突
4、git push origin