团队git操作流程

项目的开发要求

  • 项目组厉员每天代码提交不少于20次
  • 企业项目开发代码的每天的提交一般提交3-5次
  • 代码仓库的管理

git的基础操作流程

  • 命令模式 git push
  • 插件模式 vscode git graph
  • GUI软件管理模式 sourcetree

git在项目团队化开发中的应用

  • master(一般是不动的)
  • dev (主要是拿来代码合并的,其实相当于的是一个桥梁,中转站)
  • xxx1、xxx2、xxx3(主要是拿来工作的,每个人只能操作自己的xxx)
第一原则:仓库操作永远先拉取再提交,永远拉dev
  1. 远程分支创建

1)点击 master 框,点击 管理

2)点击新建分支

  1. 填写分支名,点击确认

4)创建成功

  1. 本地分支创建命令

    git branch 分支名 // 方法一:创建分支
    git checkout -b 分支名 // 方法二:创建并切换当前分支

  2. 进入到 dev 分支,将远程的 dev 拉取到本地的 dev

    git remote -v // 查看是否连接了远程仓库
    git remote add origin 仓库链接 // 连接远程仓库
    // 第一次拉取时需要执行的操作
    git pull --rebase origin dev // 拉取远程仓库最新分支并且合并
    // 除了第一次之后都使用此命令进行拉取
    git pull // 将远程仓库所有内容拉取到工作目录(提交时,先拉pull再推push)

第二原则:本地永远也不操作 dev,dev 是桥梁,是中转站,本地应该操作的是自己的分支 vane
  1. 切换到 vane 分支,并且需要将 dev 分支的代码合并到 vane 分支上(现在就可以在 vane 分支上进行任意的代码修改)

    git checkout -b 分支名 // 方法一:创建并切换当前分支
    git checkout 分支名 // 方法二:切换分支
    git merge 分支名 // 把指定的分支合并到当前分支上

  2. 执行完操作后,提交到本地仓库

    git add 文件名 :提交到暂存区
    git add . :将所有提交到暂存区
    git commit -m "" :提交到本地仓库,添加注释
    git commit -am "" : 有-a情况下可以将add和commit合并一起操作

第三原则:本地仓库推送到远程,永远不要推送自己的分支
  1. 切换到 dev 分支,并且需要将 vane 分支的代码合并到 dev 分支上

    git checkout 分支名 // 切换分支
    git merge 分支名 // 把指定的分支合并到当前分支上

注:远程 dev 分支只能拉取,不能推送

  1. 将本地的 dev 分支推送到远程的 vane 分支( 自定义分支 )

    git pull // 将远程仓库所有内容拉取到工作目录(提交时,先拉pull再推push)
    git push -u origin 分支名 // 提交远程仓库命令(指定提交到那个分支)

例:远程中有 master、dev、 vane、frank、rose等分支

组员的本地仓库需要有 master、dev、 vane(自己定义的与远程同名的分支) 分支

组长的本地仓库是有master、dev、vane、frank、rose 等分支

  1. 冲突解决

1)假设组长将远程的 rose 分支合并到远程的 dev 分支中后

2)组员 vane 将远程的 dev 分支拉取到本地的 dev 分支上(出现冲突)

3)注:每个人解决冲突的分支都在 dev 分支

4)解决完冲突进行commit提交

复制代码
git add 文件名 :提交到暂存区    
	git add . :将所有提交到暂存区
git commit -m "" :提交到本地仓库,添加注释
	git commit -am "" :  有-a情况下可以将add和commit合并一起操作

5)提交后,再切换到自身分支 vane, 并且将 dev 分支的代码合并到当前 vane 分支上

复制代码
git checkout 分支名   // 切换分支
git merge 分支名   // 把指定的分支合并到当前分支上
第四原则:公共文件一般只交给组长写
  1. 确认忽略目录与文件,如:
相关推荐
mmsx5 小时前
使用git生成ssh的ed25519密钥
运维·git·ssh
荔枝吻6 小时前
【保姆级喂饭教程】Git图形化客户端Sourcetree安装及使用教程
git·sourcetree
T - mars12 小时前
Git在Pycharm中的使用
git
sunarmy12 小时前
curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104
git
典学长编程14 小时前
高效学习之一篇搞定分布式管理系统Git !
大数据·git·搜索引擎
是2的10次方啊14 小时前
.gitignore失效自救指南:原理揭秘与工程师实战排查全流程
git
海外空间恒创科技14 小时前
香港站群服务器与普通香港服务器对比
服务器·git·github
Wetoria16 小时前
管理 git 分支时,用 merge 还是 rebase?
前端·git
泰勒朗斯1 天前
如何在新机器上设置github完成内容git push
git·github
小妖6662 天前
git branch -a 还有一些已经删除了的分支
git