本文所涉及命令基本能够涵盖平常开发场景, 对于开发者平时不多使用的命令再也不列举,这样不至于让刚刚使用git的小伙伴们看的脑壳大。。。若有特殊使用能够联系我单独回复。git
首先经过一张图了解git的工做流程:bash
而后说一下项目开发中使用git的具体工做流程:blog
1)进入项目根目录索引
2)git status: 查看当前所在的分支, 本地代码状态(哪些代码修改过,是否有冲突,是否已经添加到git索引, 是否已经将代码提交到本地等信息)ip
3)git add <option>; 添加指定文件到git索引。git add 详解请看下文开发
4)git commit -m "描述"; 提交代码到本地仓库。ps: git 强制要求添加描述,描述此次更改过哪些信息等同步
5)git pull origin 当前分支名; 将当前分支远程代码同步到本地仓库。工作流
6)我靠,冲突啦,冲突啦,怎么办怎么办。。。删项目从新clone吧。。。这多是新人最标准的想法。(~ ̄▽ ̄)~ 别着急,其实很简单it
7)找到冲突文件,和修改过该文件的相关同事商量哪些是他改动的,一块儿参与合并, 切近不要在没通过商量的前提下擅自删除别人的代码,这是很是不负责任的作法。io
8)重复执行(3)(4)(5)步: 将合并后的文件从新索引至git,并提交到本地,再次pull确认远程最新代码已被更新
9)git push origin 当前分支名; 将本地仓库代码推送至远程仓库。
上述流程图:
下文只列出最经常使用的命令, 单个命令的详解后续将更新
git branch -a # 查看全部分支,包括本地和远程仓库 git branch -r # 查看全部远程分支 git branch 分支名 # 建立新分支 git branch -d 分支名 # 删除本地指定分支。-D为强制删除。如要删除远程仓库该分支执行git push origin :分支名。注意冒号前面有个空格 git checkout 分支名 # 切换至指定分支 git checkout -b 分支名 # 建立新分支,并切换至新分支 git branch -m 老分支名 新分支名 # 更改本地分支名
git add <file> # 将本地指定文件名或目录的文件添加到git索引 git add . # 将当前文件夹下全部改动(新增,修改等变更过的)的文件添加到git索引 git add -A # 将本地全部改动(新增,修改等变更过的)的文件添加到git索引
git commit -m "description" # 将已经被git索引(git add以后的)的文件提交到本地仓库(暂存区), -m 后为描述 git commit -am # 把修改的文件添加到暂存区,但不包含新增的文件,而后提交。
git pull origin 远程分支名 #拉取远程指定分支最新文件到本地
git push origin 远程分支名 #将本地仓库(暂存区)文件推送至远程仓库