代码托管-公司用gitlab,咱用github-多人协作(二)

317 阅读4分钟

这是我参与8月更文挑战的第11天,活动详情查看:8月更文挑战

日常开发免不了多人协作, 也有一个人的, 但是也要解决冲突呀.. 多人协作 了解一下不--_-

或许大部分公司的代码托管都使用的是 gitlab, 其使用方式同理和 github的基本操作步骤类似, 故本文将会学习 全球 zui 大代码托管网站: github 的基本使用, 帮助快速融入团队的开发工作中去

后续会有学习更多功能的探索, 一起来看看吧--

一、 Github 的使用方式:

方式二

有的时候是先开发,再本地先建立了项目,后建立的远端仓库,方式应该是这样的:

1. git init 初始化本地仓库

项目环境搭建好之后,在项目目录中执行 git init 初始化了本地仓库之后,先 git add/commit,提交一个版本

​ git init

​ git add .

​ git commit -am "填写具体更改的描述"

2. 将本地仓库与远端仓库进行关联:

  git remote add origin git@github.com:userName/demo1.git   (远端仓库的地址)

3. 每次 push 代码到远端的时候应该先 git pull

我们在每次 push 代码到远端的时候应该先 git pull 一次,然后 add/commit,没问题之后再 push.推送到远端仓库


​   git pull origin master

​   git add .

​   git commit -m "填写描述"

​   git status (命令用于显示工作目录和暂存区的状态。使用此命令能看到那些修改被暂存到了, 哪些没有 )

​   git push origin master
  (git push -u origin master -f 强制推上)

?? 当我们 git pull 下来的时候可能有有这样的问题:can't merge unrelated ...

其实是因为这个时候本地的仓库和远程的仓库根本就不是同一个项目,所以拉下来的时候没有和本地的合并,所以本地没有 README.md,所以提交的时候会出错,

我们可以用上面的代码强行推上去,其实也可以在 git pull 的时候执行这样的代码 git pull --allow-unrelated-histories origin master,在拉下来的时候强行把远端的和本地的合并

所以说,上面的介绍只是在说,可以先建立仓库,再 clone,再开发,也可以先开发,再建仓,再 remote

二、github 分支与多人协作, 解决冲突

远端拥有 master 等分支,本地也会拥有 master 等分支,我们要不断保证本地 master 和远端的 master 保持一致,最终代码其实是远端 master 分支,在做项目的时候,不同的情况下也可能需要在远端有多个分支,比如预发布分支,我们最终的代码提交到预发布分支等等测试成功后再合并到远端的 master(发布分支)最终发布上线,上述的分支都是和发布有关的

我们要不断保持本地的主分支与预发布分支或者发布分支的代码一致,

我们在开发某些功能的时候,一般情况下会直接在本地创建一个功能分支,开发完成后与本地的 master 合并,

有了远端仓库之后会有一些变化,我们在分离功能的时候要在远端先建立功能分支,然后再本地建立于远端一样的一个或者多个分支,最终保持本地的 banner 和远端的 banner 是一致的


开发一个新功能的相关步骤:

  1. 先再远端建立 banner 分支

  2. 因为是刚上班,先 git pull origin master,有冲突解决一下

  3. 再本地建立 banner 分支, 先在本地的 banner 分支中 git pull origin banner,把远端的 banner 先拉下来

  4. 在本地开发代码后,add. & commit 之后 git pull origin banner 将远端分支拉下来

  5. 因为 banner 开发完成了,所以我们准备将远端的 banner 合并到远端的 master

    远端的分支不能直接合并,需要在本地进行合并,让本地的 master 和本地的 banner 先合并,解决冲突/add. & commit

    然后将本地的 master push 到远端的 master

更多阅读

更多更文阅读请查收:

【Github】基本使用(一)

【Git】代码版本控制-git 初识&基本操作(一)【Git】进阶(二)

【Node.js】搭建自动化开发环境-基本介绍【工具准备】【开工】【详细步骤(四)】【模块处理工具(五)】【模块化编程的理解】

下文更新预告, 跟上节奏, 一步一步

接下来会继续学习代码托管网站 github多人协作等. 冲鸭!! xdm

提高开发效率, 为我们的开发提效赋能!

跟上前进的步伐, 向前加油

加油!! go~