Git 命令
① git clone SSH网址。 克隆工程到本地
② git branch zz 本地创建zz一个分支
③ git checkout zz 切换到zz分支
④ git checkout -b doudou 本地创建zz 分支,并切换到zz分支
⑤ git branch -d branchname 删除本地分支
⑥ git push origin :branchname 删除远程分支
⑦ git branch -r 查看远程分支
⑧ git branch 查看本地分支
⑨ git push origin zz:zz 本地分支推到服务器zz分支(若服务器分支上没有该分支,则创建分支)
⑩ git merge zz zz分支上的代码合并到当前所在分支
⑪ git log 罗列当前版本之前的log日志,以便确定要回退到哪个版本
⑫ git reset –hard HEAD^ 回退到上一个版本(一个’ ^ ’ 符号代码回退一个版本,两个则是 ^^ 以此类推), 也可以使用 git reset –hard commit id
⑬ git reset commit id 回退到某个版本,因为缺少–hard 参数,虽然代码回退到某个版本,但是修改的代码并不会因此而消失
⑭ git reflog 查看命令历史,以便确定要回到未来的哪个版本(和git log 区别使用,git log只能回退到当前版本之前的版本,但是git reflog可以回退到之前git reset –hard commit id 删除掉的版本)
⑮ git add . 将当前工作区(包含 隐藏目录 .git 的根文件夹)修改提交到暂存区
⑯ git commit -m ” why ” 将修改从暂存区提交到分支上
⑰ git status 罗列出修改的文件
在git for window 是可以使用Linux 命令的:
① mkdir DIR 创建一个文件
② rm -rf file 移除文件
③ vim file 打开文件
④ cat file 在控制终端上显示文件内容
⑤ ls 罗列当前路径下文件
合并冲突解决:
合并分支的时候难免有冲突,应该怎么解决呢?
①首先保证自己的远程分支是最新无误的。然后在git 仓库 两个分支发起合并请求(一般都是合并到master分支上)。以stash为例 doudou分支要合并到master上:
②如果你有权限merge的话,在进行merge的时候查看是否有误(Merge按钮不可点击并且旁边有三角提示符号),如果有误,首先拒绝合并,点击Decline按钮即可。
③doudou分支开发工程师 拉下master分支代码到本地,这个时候他的本地代码肯定是有错误的。情况类似于: (doudou|MERGING)
④doudou分支开发工程师 在git for window 调用 git status ,查看有的冲突文件,认真的通过开发工具解决掉所有的冲突。
⑤ 确定所有冲突都已经解决,开发人员 调用 git add . git commit -m “解决合并冲突…” git push origin doudou:doudou 推到远程分支
⑥ 再一次执行 ① 进行合并请求,这个时候就会发现合并无误了,点击merge 按钮即可。
git 版本 TAG
为什么要打tag , 一个项目需要依赖多个module,module 和 app 如果在不同的远程库中的,每次上线后一天app 和 module就需要打Tag,这样当版本回退的时候可以快速的定位到当时的app,以及当前app 所依赖的moudle版本
① git tag -a v1.1 -m “注释”
② git push origin v1.1 推tag 版本到远程仓库
③ git tag -l tag历史
④ git tag -d v1.1 删除本地tag
⑤ git push origin –delete tag V1.1 删除远程仓库tag