背景

在我们的团队中,我作为管理者,创建了一个叫HelloWorld的项目,大家各自在本地进行开发,将自己的工作贡献到我们的团队项目中。为了便于审核,我希望大家先将自己的贡献先放在属于自己的一个分支上,以后,你把你每次的贡献都放在这个分支。等我审核后,认为你的贡献是用心的、有价值,我再合并到主分支。这个主分支的所有内容就是我们进行团队开发最终的成果!是不是很有成就感!话不多说,关于git的使用背景和常用操作,小林老师已经给了大家博客链接。下面,咱们就开门见山,跟着我边做边学!


Step1:我们先去码云上把我创建的HelloWorld项目找到,并把它克隆下来。点击“克隆/下载”,把下面这个项目地址复制下来。


Step2:在本地某个文件夹(你希望这个项目放在哪,如下图我想把这个项目放在“软件工程助教”的文件夹下),进入该文件夹,右键选择git Bash Here  进行clone操作,我们使用的命令是:

git clone [项目地址]

这个项目地址就是你刚才复制的我们的项目地址。回车,出现了下图中提示,done.说明克隆完成,这时候你的文件夹下就有了一个HelloWorld的文件夹,以后,我们的每次贡献代码就放在这里。下面,我们要在这个HelloWorld文件里进行操作,所以要看仔细了,我们现在还没有进入到这个文件夹,我使用

cd HelloWorld/

进入到这个文件夹,现在我们就可以进行下面的工作了。


Step3:接下来,你就安心的进行开发吧,1个小时后(我相信以你的能力这点小问题1个小时完全可以解决!),你的代码完成了,就可以把你的工作贡献到项目上了,看下面我写好了一个HelloWorld_Test,存在于我们的HelloWorld文件夹下。


Step4:但是现在,我做的工作还在我本地,下面我们就要把我们做的工作贡献到远程的项目中(码云项目)。而且,正如我所说,我们做的工作难免会有疏漏和错误,这是不能直接作为项目的一部分的。所以我们还要在远程创建分支,先把我们的工作放在里面。接下来,我们继续进行操作(再次查看一下你的git命令行是否在HelloWorld这个项目文件夹里)先在本地创建一个分支,名叫mzf:

git checkout -b mzf

当你使用了我上面的命令时,实际上你不仅创建了一个新分支,而且你会发现你已经在这个分支里了,如下图蓝色括号里的内容由(master)变成了(mzf),如果你不放心有没有创建成功,还可以像我一样,使用

git branch -a

查看所有分支,来确定里面有没有属于你的那个分支,如下图,出现了master和mzf,说明我刚才创建的分支成功了。但是细心的你继续往下看,是否发现下图中的红色语句,它是在提醒我们:在远程仓库中,还没有这个分支,如果这个时候进行push,会将你的项目push到master分支,但这不是我们想要的。所以,我们还要创建远程的mzf分支。


Step5:要能使我们的工作push过去,我相信大家通过学习都知道还需要先进行git add和git commit -m操作,但是这里我还是想让大家养成好习惯:git add之前先查看。使用下面的命令:

git status

我们发现你工作的所有内容都会以红色的语句提示给你。确定这是你的工作内容后,就可以安心进行git add了。

git add .
git commit -m"test"

git add后的“."表示将所有文件从工作区存到暂存区,然后使用git commit -m "test"(引号的内容可以是本次更新版本等信息)将暂存区内容提交到本地分支。完成之后可以再查看一下当前状态。


Step6:将文件提交到本地分支后,就可以提交到远程仓库了。我们先进行

git push

这时候它提示我们下图中的语句,是说:远程没有这个分支,如果你想把mzf分支提交到远程的mzf分支,需要使用

git push --set-upstream origin mzf

这样,我们就在远程仓库也创建了一个同名分支,并且将本地分支的内容提交上去了。


Step7:我们进入码云的团队项目中查看分支,发现多了一个mzf分支,选择这个分支,里面的内容就是你提交的工作。至此,我们的任务就完成了。下面就是等待审核了。我相信,只要我们勤奋用心,我们的付出都是有价值的!


 Step8:完成以上步骤之后,以后我们每次提交工作不需要再创建新的分支,而是提交到你第一次创建的分支中。这时,我们只需要先进入自己的分支,使用命令:

git checkout [分支名]

然后在该分支中进行add、commit 和push操作,而且由于仓库中已经有我们的分支,所以我们可以直接使用命令:

git push

   总结与提示:

  • 我已经把项目更名为:SE16_Item
  • 在提交自己的工作之前,别忘了要先进入自己的分支(SE+学号后3位),再进行操作,别选错分支!
  • 要想大家一起写我们的“HelloWorld”这个项目,你还必须得成为这个项目得开发成员,别担心,点击下面的邀请链接,你就可以成为这个项目的开发者,下面就开始我们的工作吧!

<https://gitee.com/se16/HelloWorld/invite_link?invite=045932b808c566f8990d3d0faafb31aabd2be115e7c03aacb7993663152babc5b2abfd9dbc4be44c>

使用git命令创建分支到团队项目的更多相关文章

  1. git创建分支并提交项目

    git 创建分支, 切换分支, 合并分支, 删除分支及提交[commit提交到本地仓库push名利提交到远程服务器], 检出[pull], 冲突修改, 本地仓库同步远程服务器[pul和push命令l] ...

  2. git 不能创建分支

    git 不能创建分支,如下 fatal: cannot lock ref 'refs/heads/hotfix/aa': 'refs/heads/hotfix' exists; cannot crea ...

  3. 使用dos命令创建多模块Maven项目

    好吧,咱们接着上一篇博客继续用另一种方式来创建Maven项目.不过在创建之前我们应该先熟悉一些相关dos命令. 创建web项目命令: mvn archetype:generate -DgroupId= ...

  4. git 命令合并分支代码

    git 命令合并分支代码 对于复杂的系统,我们可能要开好几个分支来开发,那么怎样使用git合并分支呢? 合并步骤: 1.进入要合并的分支(如开发分支合并到master,则进入master目录) git ...

  5. 通过git命令“六步”提交新项目到码云

    通过git命令“六步”提交新项目到码云 一.初始化本地仓库 git init 二.添加文件 git add . 三.添加远程数据仓库链接 git remote add origin https://g ...

  6. 如何使用git命令从github上取得项目

    首先我们要安装git, git官网:https://git-scm.com/点击打开链接 拉取项目步骤详解 新建文件夹,最好取为项目英文名***Project 进入文件夹,空白处右键,选择git Ba ...

  7. git 命令 clone分支的代码

    一个项目通常含有很多分支, master分支一般是经过测试,验证没有问题后,代码才会提交到master分支 develop分支,是测试经常拉下来进行测试的分支 直接复制develop分支的git 命令 ...

  8. eclipse上的git命令使用浅析,搭建Maven项目

    eclipse上的git命令使用浅析 2016-03-31 14:44   关于eclipse上git的安装和建立代码仓库的文章比较多,但作为一个初识git的人更希望了解每个命令的作用. 当项目连接到 ...

  9. Apache Maven Cookbook(一)maven 使用命令创建、编译java项目

    一.创建 使用命令创建项目分几步: 1.打开命令行窗口,比如cmd,把目录切换至想要创建项目地方. 2.执行如下命令: mvn archetype:generate -DgroupId=com.zua ...

随机推荐

  1. 一个CSS值转REM的Sublime Text插件

    CSSREM 一个CSS的px值转rem值的Sublime Text 3自动完成插件. 插件效果如下: 安装 下载本项目,比如:git clone https://github.com/flashli ...

  2. MyCat不适用场景(使用时避免)

    1.非分片字段查询 Mycat中的路由结果是通过分片字段和分片方法来确定的.例如下图中的一个Mycat分库方案: ·        根据 tt_waybill 表的 id 字段来进行分片 ·      ...

  3. BTREE这种Mysql默认的索引方式,具有普遍的适用性

    文章转自 https://blog.csdn.net/caomiao2006/article/details/52145477 Mysql目前主要有以下几种索引方式:FULLTEXT,HASH,BTR ...

  4. 分布式缓存技术redis系列(五)——redis实战(redis与spring整合,分布式锁实现)

    本文是redis学习系列的第五篇,点击下面链接可回看系列文章 <redis简介以及linux上的安装> <详细讲解redis数据结构(内存模型)以及常用命令> <redi ...

  5. 如何将爬取的数据写入ES中

    前面章节一直在说ES相关知识点,现在是如何实现将爬取到的数据写入到ES中,首先的知道ES的python接口叫elasticsearch dsl 链接:https://github.com/elasti ...

  6. 【转】Kaggle注册问题-验证码和手机短信

    注册和登录Kaggle时验证码无法显示问题 参考:https://blog.csdn.net/zhuisaozhang1292/article/details/81529981 应用FQ软件需要时时关 ...

  7. PAT A1143 Lowest Common Ancestor (30 分)——二叉搜索树,lca

    The lowest common ancestor (LCA) of two nodes U and V in a tree is the deepest node that has both U ...

  8. Objective-C 类簇深入理解

    类簇(class cluster),是一种基于抽象工厂的设计模式,广泛运用于系统的Foundation框架.顾名思义,即一坨类,这里指的是继承自同一父类的一组私有子类.这种实现既可以简化公共接口,又保 ...

  9. linux内存源码分析 - SLAB分配器概述

    本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 之前说了管理区页框分配器,这里我们简称为页框分配器,在页框分配器中主要是管理物理内存,将物理内存的页框分配给申请 ...

  10. [06] JSTL标准标签库

    1.JSTL概述 之前在<[03-01] JSP自定义标签>中已经说明了自定义标签的概况,而JSTL也是一套标签库,不过是厂商已经定义好的标签库,我们不再需要自行进行定制,直接使用即可. ...