你好! Git——如何进行多人协作

avatar
作者
筋斗云
阅读量:0

多人协作(5)

一、标签管理

标签 tag ,可以简单的理解为是对某次 commit 的⼀个标识,相当于起了⼀个别名。

  1. 创建标签
    创建标签的指令(给最新的提交打上标签):
git tag v1.0 

给指定的commit id打标签:

git tag v0.9 commit id号 

给指定的commit id进行描述:

git tag -a v0.8 -m "描述的信息" 2331213(指定的commit id)//没有写指定的commit id就把最新的提交打上标签 

在这里插入图片描述

  1. 查看标签

查看所有存在的标签:

git tag 

查看标签的描述:

git show v0.8 

在这里插入图片描述

  1. 删除标签

删除标签指令:

git tag -d v0.8 

在这里插入图片描述

  1. 推送标签到远程仓库
    推送指定的标签:
git push origin v0.8 

在这里插入图片描述
推送所有的标签

git push origin --tags 

删除远程仓库的标签:

git push origin :v0.8//记得先把本地的标签删掉(git tag -d v0.8),在删远程的标签 

在这里插入图片描述

二、多人协作

2.1 场景一(这种方式不常见)

目标:远程master分支下file.txt文件新增代码“aaa”,“bbb”
实现:由开发者1新增“aaa”,由开发者2新增“bbb”
条件:在一个分支下协作完成
在这里插入图片描述

  1. 先要创建一个分支(远程,本地都可以)
    在这里插入图片描述
  2. 远程分支与本地分支进行连接

查看远程分支:

git branch -r 

在这里插入图片描述
查看本地分支:

git branch 

在这里插入图片描述
查看远程和本地分支:

git branch -a 

在这里插入图片描述

本地分支与远程分支进行连接:

git checkout -b dev origin/dev 

在这里插入图片描述

查看远程和本地分支是否建立连接:

git branch -vv 

在这里插入图片描述

  1. 多人协作,把远程仓库克隆到windows系统里。

在windows窗口里输入:

git clone https://gitee.com/big-ll/remote-gitcode.git 

在这里插入图片描述
已经克隆成功了
在这里插入图片描述

  1. 开发者1新增代码“aaa”,添加到远程仓库
    在这里插入图片描述
  2. 开发者2新增代码添加到远程仓库

打开了终端:
在这里插入图片描述
创建分支并切换(不与远程仓库连接):
在这里插入图片描述
分支与远程仓库连接:

在这里插入图片描述
在这里插入图片描述
我们把修改的代码进行提交,发现报错(原因是与远程仓库起冲突):
在这里插入图片描述
解决冲突,并提交:
1.先把远程仓库的内容拉取下来,解决冲突:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.提交代码:
在这里插入图片描述
在这里插入图片描述

  1. 将内容合并进master分支

在这里插入图片描述

1.远程仓库进行合并分支
在这里插入图片描述
内容填写完毕就可以提交了
在这里插入图片描述

2.本地仓库进行合并分支
在这里插入图片描述
远程仓库已经合并完成;
在这里插入图片描述

总结⼀ 下,在同⼀分⽀下进⾏多⼈协作的⼯作模式通常是这样:
• ⾸先,可以试图⽤ git push origin branch-name 推送⾃⼰的修改;
• 如果推送失败,则因为远程分⽀⽐你的本地更新,需要先⽤ git pull 试图合并;
• 如果合并有冲突,则解决冲突,并在本地提交;
• 没有冲突或者解决掉冲突后,再⽤git push origin branch-name推送就能成功!
• 功能开发完毕,将分⽀ merge 进 master,最后删除分⽀。

记得把dev分支删除掉。

2.2 场景二(常见)

目标:远程master分支下新增function1和function2文件
实现:由开发者1新增function1,由开发者2新增function2
条件:在不同分支下协作完(各自让某一个功能私有某一个分支)

  1. 开发者1创建一个分支,写好功能,然后提交分支,把分支推送给远程仓库(与远程仓库连接)
git branch git checkout -b function1 vim func1 git add . git commit -m "add func1" git push origin function1 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 开发者2创建一个分支,写好功能,然后提交分支,把分支推送给远程仓库(与远程仓库连接)
    代码:
与开发者1一样 

开发者2与开发者1的方式一样:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
经过上面的操作,两位开发者都可以在自己的分支上去写代码。

  1. 如果⼩伙伴突然⽣病了,但需求还没开发完,需要你帮他继续开发,于是他便把 function2分⽀名告诉你了。 这时你就需要在⾃⼰的机器上切换到function2分⽀帮忙继续开发。

git pull
1.拉取分支内的内容
2.拉取仓库的内容(git push origin function2)每一次都要这个操作

要做的操作如下:

# 必须先拉取远端仓库内容 git pull # 创建本地分支并切换,与远程仓库连接 git checkout -b function2 origin/function2 //对文件进行开发,然后提交 vim func2 git add func2 git commit -m "modify func2" #把我们开发的内容推送到远程仓库 git push origin function2 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
如果同事没病了,需要继续开发程序:
先要从远端仓库拉取数据(前提是要与远端仓库建立连接)

git pull git branch --set-upstream-to=origin/function2 function2 git pull 

在这里插入图片描述
在这里插入图片描述
继续开发,开发完毕后,提交修改信息,并推送数据
在这里插入图片描述
在这里插入图片描述

  1. 多人开发,将内容合并到master分支上

1.在远程仓库里将function2合并到master分支
在这里插入图片描述
在这里插入图片描述
2.在本地仓库里将master分支拉取下来,然后合并master分支
需要先切换到master分支上,然后拉取远程仓库里的内容

git branch --set-upstream-to=origin/function1 function1 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
切换到function1分支,然后合并master分支,并提交,推送function1分支
在这里插入图片描述
3.在远程仓库里将function1与master分支合并
在这里插入图片描述
在这里插入图片描述
各个开发人员的文件都在master分支里了
在这里插入图片描述

3.画图

在这里插入图片描述

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!