Git 在团队开发中对代码的管理,刚开始的我一头雾水

1,524 阅读3分钟

写前话痨

之前俺在开发团队项目时,都是一个人负责一个端,不会涉及到几个人去开发同一个端,因此只需要通过github/gitee 创建自己负责的仓库就可以了。

好呀,该来的总该会来的,在最新的项目开发中,就需要两个人负责一个端,那么git分支管理对于这种开发场景下就会显得尤为重要。刚开始的俺脑子也是一头雾水,理清思路后,其实还是挺轻松的,至少在开发多人合作的团队项目中还是绰绰有余的😁

细化流程

俺会将俺在开发这种多人协作开发的git管理是如何做的思路和流程梳理下来,同时也是做一次记录,防止以后再开发这种项目时若忘了流程的话再回头看看

不听也不看的小熊二_7_枳酒._来自小红书网页版.jpg

如果是别人创建的仓库只需要邀请你加入就可以,如果是你创建的仓库那就需要你邀请别人

详细步骤

如果是别人邀请你的,那你需要把仓库的代码通过 git clone 仓库地址 克隆一份到本地

自己创建的仓库就不需要再克隆了

本地与仓库的代码初次同步后,先不要急着写代码

步骤1:创建分支

$ git branch doudou

步骤2:切换刚刚创建的分支

$ git checkout doudou

步骤3:修改好代码后将代码提交到远程仓库(前提:在你之前创建好的分支提交)

$ git add . # 所有文件添加暂存
$ git commit -m "提交描述" # 提交到本地仓库
$ git push origin doudou # 强制同步远程仓库

远程仓库就会有两个分支了

image.png

步骤4:将代码合并到主分支

一般只需要管理自己分支的代码合并到主分支就行了,除非你是项目组组长,可能需要有时将其他的分支合并到主分支

这里分两种情况:

  1. 主分支的代码没有改变(意思就是跟你之前将仓库的代码拉取到本地时的是一样的)
$ git branch # 查看本地分支
$ git branch -r # 查看远程分支(了解)
$ git checkout main  # 切换到主分支
$ git merge doudou # 用于合并指定分支到当前分支
$ git add .
$ git commit -m "felactor: 合并doudou分支"
$ git push # 提交到远程仓库
  1. 主分支代码被项目小组的其他人改变(这里我就模拟下:将远程仓库的主分支代码修改下并提交来模拟其他人改变了主分支的代码)
$ git checkout main # 切换到主分支
$ git pull # 把当前分支的代码拉取到本地(目的是防止冲突)
$ git merge doudou # 用于合并指定分支到当前分支
$ git add .
$ git commit -m "felactor: 合并doudou分支"
$ git push # 提交到远程仓库

步骤5:删除远程分支

当项目开发完后,为了保持远程仓库的分支的统一和单一,可把远程的其他分支删除,只留一个主分支如main/master,本地的分支不建议删除,保不齐项目需要返工或迭代呢。如果这项目都不维护了,那你为了让你的电脑寿命能更加长久,本地的项目随便删😎

$ git push origin :doudou # 删除名为“doudou”的远程分支

合并冲突

当合并分支代码时,若两个分支中的文件都有修改,会出现 both modified 的字样的冲突报错:

$ git status # 查看仓库当前状态,查看冲突的那部分代码,手动解决
$ git add .
$ git commit -m "提交描述"
$ git push # 提交到远程仓库

git 基础命令

git init # 初始化
git add . # 所有文件添加暂存
git commit -m ‘first commit’ # 提交到本地仓库
git status # 查看仓库当前状态
git push origin master # 强制同步远程仓库
git reset HEAD^ # 恢复成上次提交的版本
git push -u origin master # 同步远程仓库
git remote add origin git@github.com:帐号名/仓库名.git # 本地仓库内容推送到远程仓库
git clone git@github.com:git帐号名/仓库名.git # 从远程仓库克隆项目到本地
git remote # 查看远程库信息
git checkout -b dev # 表示创建并切换分支
git branch dev  # 创建分支
git checkout dev  # 切换分支
git branch # 查看分支
git merge dev #用于合并指定分支到当前分支
git branch -d dev # 删除本地分支
git branch -r # 查看远程分支
git push origin :dev # 删除名为“dev”的远程分支
git config --global alias.rm '!git push origin --delete' # 使用别名快速删除远程分支
git rm dev # 删除名为“dev”的远程分支

好啦好啦

好啦好啦,总的来看,就是当你需要合并主分支代码时,就先同步一下远程仓库的主分支代码,然后再将本地分支的代码合并到主分支再提交到主分支就行了

告辞.jpg