0


用Git远程仓库实现多人协同开发

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹)

分支

初识分支

概念:本质上是指向提交节点的可变指针,默认名字是 master

注意:HEAD 指针影响工作区/暂存区的代码状态
场景:开发新需求 / 修复 Bug,保证主线代码随时可用,多人协同开发提高效率

例如

    在现有代码上创建新分支完成内容列表业务突然需要紧急修复 Bug - 单独创建分支解决 Bug![](https://img-blog.csdnimg.cn/92564e50ecd946aab2da16fbd2bf7db8.png)

需求:创建内容列表 content 分支,并产生 3 次提交记录

步骤

       1. 创建分支命令: 

git branch 分支名

       2. 切换分支命令: 

git checkout 分支名

    3. 工作区准备代码并暂存提交,重复 3 次![](https://img-blog.csdnimg.cn/0bc8ca9f2f9a432c92f5e5174ede29f0.png)
周星辰@˽□□ר□□□豸 MINGW64 /d/Git学习 (master)
$ git branch content

周星辰@˽□□ר□□□豸 MINGW64 /d/Git学习 (master)
$ git checkout content
Switched to branch 'content'
A       day01/page/login/index.css

周星辰@˽□□ר□□□豸 MINGW64 /d/Git学习 (content)
$ git branch
* content
  master

周星辰@˽□□ר□□□豸 MINGW64 /d/Git学习 (content)
$ git add .

周星辰@˽□□ר□□□豸 MINGW64 /d/Git学习 (content)
$ git commit -m '7.内容页面-标题搭建'
[content 83b2566] 7.内容页面-标题搭建
 44 files changed, 1369 insertions(+)
 create mode 100644 day01/page/login/index.css   
     
周星辰@˽□□ר□□□豸 MINGW64 /d/Git学习 (content)
$ git log --oneline
83b2566 (HEAD -> content) 7.内容页面-标题搭建
b58777f (master) 1.登录页面-标签部分准备

分支-合并与删除

需求:把 login-bug 合并回到 master 分支并删除 login-bug 分支

步骤

    1. 切回到要合入的分支上:git checkout master 

    2. 合并其他分支过来:git merge login-bug 

    3. 删除合并后的分支指针:git branch -d login-bug![](https://img-blog.csdnimg.cn/38ac1baeb4e046789715f5f27eaceb4c.png)

写完新的分支login-bug后,先切回要合入的分支上

在当前分支中合并login-bug分支

最后将原来的login-bug分支删除

分支-合并与提交

合并提交:发生于原分支产生了新的提交记录后,再合并回去时发生,自动使用多个快照记录合并后产生一次新的提交

步骤

       1. 切回到要合入的分支上: 

git checkout master

       2. 合并其他分支过来: 

git merge content

       3. 删除合并后的分支: 

git branch -d content

最后合并回到主分支上时,提交记录流程图:

注意:提交记录的顺序按照产生的先后顺序排列,而非合并的先后顺序

分支-合并冲突

需求1:基于 master 新建 publish 分支,完成发布文章业务,然后修改内容页面的 html 文件的 title 标签,并提交一次

需求2:切换到 master,也在修改内容页面的 html 文件的 title 标签,并提交一次

冲突:把 publish 分支合并到 master 回来,产生合并冲突

概念:不同分支中,对同一个文件的同一部分修改,Git 无法干净的合并,产生合并冲突

解决

    1. 打开 VSCode 找到冲突文件并手动解决 

    2. 解决后需要提交一次记录 

避免:(多交流)

    1. 按页面划分不同分支开发 

    2. 公共代码在统一文件夹维护 

    3. Node等软件版本统一,npm 包统一下载

Git 常用命令

Git 远程仓库

概念:托管在因特网或其他网络中的你的项目的版本库

作用:保存版本库的历史记录,多人协作

创建:公司自己服务器 / 第三方托管平台(Gitee,GitLab,GitHub...)

需求:创建远程版本库,并把本地 Git 仓库推送上去保存

步骤:

    1. 注册第三方托管平台网站账号 

    2. 新建仓库得到远程仓库 Git 地址 

    3. 本地 Git 仓库添加远程仓库原点地址 

** 命令**:git remote add 远程仓库别名 远程仓库地址

            **例如**:git remote add origin https://gitee.com/lidongxu/work.git 

    4. 本地 Git 仓库推送版本记录到远程仓库 

           ** 命令**:git push -u 远程仓库别名 本地和远程分支名 

          **  例如**:git push -u origin master 

           ** 完整写法**:git push --set-upstream origin master:master

Git 远程仓库-克隆

克隆:拷贝一个 Git 仓库到本地,进行使用

命令:git clone 远程仓库地址,例如:git clone https://gitee.com/lidongxu/work.git

效果:在运行命令所在文件夹,生成 work 项目文件夹(包含版本库,并映射到暂存区和工作区)

注意1:Git 本地仓库已经建立好和远程仓库的链接

注意2:仓库公开随意克隆,推送需要身为仓库团队成员

多人协同开发

需求:小传新代码共享给小智

步骤:

    1. 小传开发代码 -> 工作区 -> 暂存区 -> 提交 -> 拉取(可选)-> 推送 

    2. 小智 -> 拉取(后续也可以开发代码 -> ... -> 推送) 

    3. 想要看到别人同步上去的最新内容:git pull origin master 等价于 

            git fetch origin master:master(获取远程分支记录到本地,未合并) 

            git merge origin/master (把远程分支记录合并到所在分支下)![](https://img-blog.csdnimg.cn/9368402d87894c21b423e9108a1fcca5.png)

Git 常用命令

标签: git 前端 开发语言

本文转载自: https://blog.csdn.net/weixin_73295475/article/details/131919179
版权归原作者 小周不摆烂 所有, 如有侵权,请联系我们删除。

“用Git远程仓库实现多人协同开发”的评论:

还没有评论