天行健,君子以自强不息;地势坤,君子以厚德载物。
每个人都有惰性,但不断学习是好好生活的根本,共勉!
文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。
文章目录
- Git多人协作
-
- [1. 查看远程仓库](#1. 查看远程仓库)
- [2. 推送代码](#2. 推送代码)
- [3. 拉取分支](#3. 拉取分支)
- [4. rebase](#4. rebase)
Git相关文章参考:
Git学习和使用指南简单篇
Git学习和使用指南详细篇
Git命令汇总
Git多人协作
git 本地仓库与远程仓库建立连接时是将本地的master分支和远程的master分支对应
远程仓库的默认名称为origin
1. 查看远程仓库
查看远程仓库名
l
git remote
查看远程仓库详细信息
l
git remote -v
该命令可查看到抓取fetch和推送push的地址,若无推送权限则不会显示push地址
2. 推送代码
把当前分支本地提交的代码推送到远程仓库,推送时需要指定本地分支,git将该分支推送到远程仓库对应的远程分支上
推送语法:
l
git push origin <branch>
举例:
将本地master分支的提交推送的对应的远程仓库的master分支
l
git push origin master
将本地dev分支的提交推送到对应远程仓库的dev分支
l
git push origin dev
注意:
master分支为主分支,时刻需与远程同步,故需推送
dev分支为开发,团队成员都需要使用,故需推送
bug分支只用于本地修复bug,无需推送
feature分支需不需要推送取决于是否合作开发
3. 拉取分支
当多人协同工作时,不同人提交的代码不同,代码需要合并,此时推送代码可能会失败,需要解决冲突后提交
当前分支为master,先切换到dev,并将dev与远程的dev连接
l
git checkout -b dev origin/dev
在dev分支上修改代码,然后添加、提交并推送到远程仓库
l
git add .
l
git commit -am "描述信息"
l
git push origin dev
如果其他人也提交了你修改的那个文件,并且文件内容做了和你不同的修改,则可能会冲突,推送失败
此时需要先拉取最新的代码
l
git pull
若拉取失败,原因根据提示可能是本地dev未指定远程origin/dev,直接设置本地与远程dev的连接
l
git branch --set-upstream-to=origin/dev dev
建立链接后再拉取
l
git pull
拉取成功,解决冲突然后提交再推送
l
git commit -am ""
l
git push origin dev
总结多人协作的代码拉取:
- 先
git push origin <branch-name>
推送代码 - 失败则
git pull
拉取最新代码到本地 - 有冲突则解决冲突后并提交
git commit
- 然后推送
git push origin <branch-name>
注意:
git pull
提示no tracking information
表示本地与远程分支未建立链接
用命令建立连接git branch --set-upstream-to <branch-name> origin/<branch-name>
4. rebase
rebase操作可以把本地未push的分叉提交历史整理成直线
rebase的目的是让查看历史提交的变化看起来更简单
缺点:本地的分叉提交会被修改
感谢阅读,祝君暴富!