一, 常用命令行
- Git init // 初始化本地 Git 环境
- Git clone XXX// 克隆一份代码到本地仓库
- Git pull // 把远程库的代码更新到工作台
- Git pull --rebase origin master // 强制把远程库的代码跟新到当前分支上面
- Git fetch // 把远程库的代码更新到本地库
- Git add . // 把本地的修改加到 stage 中
- Git commit -m 'comments here' // 把 stage 中的修改提交到本地库
- Git push // 把本地库的修改提交到远程库中
- Git branch -r/-a // 查看远程分支 / 全部分支
- Git checkout master/branch // 切换到某个分支
- Git checkout -b test // 新建 test 分支
- Git checkout -d test // 删除 test 分支
- Git merge master // 假设当前在 test 分支上面, 把 master 分支上的修改同步到 test 分支上
- Git merge tool // 调用 merge 工具
- Git stash // 把未完成的修改缓存到栈容器中
- Git stash list // 查看所有的缓存
- Git stash pop // 恢复本地分支到缓存状态
- Git blame someFile // 查看某个文件的每一行的修改记录 () 谁在什么时候修改的)
- Git status // 查看当前分支有哪些修改
- Git log // 查看当前分支上面的日志信息
- Git diff // 查看当前没有 add 的内容
- Git diff --cache // 查看已经 add 但是没有 commit 的内容
- Git diff HEAD // 上面两个内容的合并
- Git reset --hard HEAD // 撤销本地修改
- echo $HOME // 查看 Git config 的 HOME 路径
- export $HOME=/c/gitconfig // 配置 Git config 的 HOME 路径
二. 团体项目流程, 克隆一个全新的项目, 完成新功能并且提交
- Git clone XXX // 克隆代码库
- Git checkout -b test // 新建分支
- modify some files // 完成修改
- Git add . // 把修改加入 stage 中
- Git commit -m '' // 提交修改到 test 分支
review 代码
- Git checkout master // 切换到 master 分支
- Git pull // 更新代码
- Git checkout test // 切换到 test 分支
- Git meger master // 把 master 分支的代码 merge 到 test 分支
Git push origin 分支名 // 把 test 分支的代码 push 到远程库
三. 目前正在 test 分支上面开发某个功能, 但是没有完成. 突然一个紧急的 bug 需要处理
- Git add .
- Git stash
- Git checkout bugFixBranch
- Git pull --rebase origin master
- fix the bug
- Git add .
- Git commit -m ''
- Git push
- Git checkout test
- Git stash pop
- continue new feature's development
四, 工作流程图
来源: http://www.bubuko.com/infodetail-3009151.html