跟着笔者魔鬼般的步伐,我们一起来瞅瞅一个团队协作的任务如何进行版本管理吧~

要跟上哦~

===============================================

首先我们先来看下git进行版本管理的大概流程:

好啦,心里大概有个底了吧,现在开始正式操作了哟~

(一)前期准备

1.申请一个github账号:

  访问https://github.com/,进入如图页面:

注册一个属于自己的github账号。

2.安装git:

  安装指南:http://note.youdao.com/share/?id=f0b3422cf19db7c0dcc31de16f2653cc&type=note

3.安装开发工具IntelliJ IDEA(当然啦,可以根据自己的喜好安装不同的开发工具):

  安装指南:http://note.youdao.com/share/?id=89349b4e4f6f57ae603c2c43bad1bb62&type=note

4.github与本地电脑的关联 && 本地gitbash配置全局用户名等信息:

 -在安装好之后,电脑桌面会生成gitbash的快捷方式,我们将其打开,会进入到如下界面:

  

  -现在我们先在GitBash上将一些前期的准备工作做好。

  --首先,开启快速编辑模式(这样才可以右击鼠标粘贴,不开启的话粘贴功能不能用的哟):在Git Bash任务栏右击,点击下拉菜单中“属性”按钮,出现如下界面,勾选 “快速编辑模式”:

  

 设置好了,现在我们可以开始愉快的进行git操作了。

 --先建立本地电脑与github的联系(为github账号加入SSH Key):

  ->创建SSH Key:

  首先到用户主目录(一般是C:\Users\admin)下,看看有没有.ssh文件夹。

  如果有,再看看这个目录下有没有id_rsaid_rsa.pub这两个文件;

  有的话,可直接跳到下一步;

  如果没有,打开Git Bash,在命令行输入以下命令,然后回车。

$ ssh-keygen -t rsa -C "你注册github的邮箱"
 这时用户主目录下就会生成.ssh的文件夹,里面有id_rsaid_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人:

  ->给github账号配置SSH秘钥:

  登陆GitHub,打开“Account settings”,点击左侧“SSH Keys”按钮,再点击右侧“Add SSH Key”,在输入框中填一个自己中意的Title,在Key文本框里粘贴id_rsa.pub文件的内容:

    

  --然后我们在本地配置全局的用户名等信息,这样进行git操作时,你的身份才是可以识别的:

   ->在Git Bash命令行中键入如下命令:

1.git config user.name "用户名"
2.git config user.email "邮箱"
3.git config color.ui true //可选,设置Git Bash字体有颜色差异

  

(二)操作

  1.本地已有代码

  ->在Git Bash命令行用“cd”命令进入你存放代码的文件夹;

  ->git init 命令初始化本地仓库。你的代码存放文件夹下会出现如图所示的".git"文件夹。

  2.本地无代码,直接去远程库上克隆项目

  -访问团队项目远程仓库地址(此演示为当地址需访问别人项目得到的情况,如果有地址时,只需在登陆自己github账号的同时打开该地址)

  ->登录你的github账号,在搜索框中输入你要查找的项目名或用户名。在跳转后的页面点击Code或Users,出现要搜索的结果后,点击进入。

   

  ->在所访问用户的主页中找到你想要的项目。

     

  将项目fork一份到自己的github仓库中。如下图所示,fork之前,地址栏访问的是别人的github仓库;fork之后地址栏跳转到自己的github仓库地址,fork后面的数字会+1.这时就将项目文件拷贝了一份到自己的远程仓库。复制自己的远程仓库地址(如果github上没有绑定SSH秘钥,请复制https路径,不要复制SSH路径)。

    

  -将远程仓库的项目迁到本地仓库中(下面演示的是图形化界面,git命令见开头流程图)

  打开IDEA,在菜单栏找到“VCS”,下拉菜单中悬停“Chenckout from Version Control”,点击“GitHub”。如下图所示:

  会出现如下界面,输入你的github账号密码。

  然后在接下来的页面设置你的操作密码;在如下页面的Git Repository URL输入刚刚复制的项目地址(自己的远程仓库),点击clone。就可以将远程仓库的项目迁下来。

-对项目进行修改
-将本地仓库修改后的代码迁移到远程仓库中
首先,为了方便团队协作,我们在本地checkout一个本地分支。
如图,在IDEA的右下角,我们选择新建一个分支。我新建了一个名为“develop”的分支,如下图所示:

   

 接下来我们就在改分支编写代码啦。

 修改完之后,我们就要将本地仓库的代码提交到远程服务器上面了。

 如下图所示,在IDEA左侧项目名上面,我们点击万能的右键,选择“Git”子菜单中的“Commit Directory”;在弹出窗口中填写提交信息,然后点击“Commit and Push”;在接下来的弹出框中“Commit”“Push”。这是代码就提交到远程仓库的“develop”分支了。

   

(三)远程

 -在远程仓库中贡献代码

  进入你的github页面,会显示如下的提交信息。点击“Compare & pull request”进行合并,切换到develop分支可以看到刚刚提交的代码了。

  

  -现在我们找到亮眼的“New pull request”按钮进行点击。会跳转如右下所示页面。左边选择你自己的分支,右边选你要与之对比合并的团队项目远程分支,确认就可以了。

  

github团队协作教程的更多相关文章

  1. 超详细!Github团队协作教程(Gitkraken版)

    超详细!Github团队协作教程(Gitkraken版) 一.前期工作 1. 在 Github 上创建 organization step1. 登录Github网站,点击右上角头像,选择 " ...

  2. GitHub团队协作流程

    说来惭愧,这么长时间,第一次参与修改开源项目,所以整理了一份GitHub团队协作流程,作为备忘,文章大部分内容参考https://www.cnblogs.com/schaepher/p/4933873 ...

  3. 【原创】Github团队协作之Pull请求

    首先声明:Github上关于代码团队协作方式有很多种,这里只讲述Github上其中的一种代码团队协作方式.   Pull请求(Pull request) 1 综述     协作者通过fork一个新的代 ...

  4. 协同开发功能——Github团队协作

    最近需要写一个HoloLens开发的简明介绍,其中要测试几个demo.用到github以团队协作,像下面是简单的事件记录. 一.创建项目 1. 2.项目设置 名称 描述description Init ...

  5. Github 团队协作基本流程与命令操作 图解git工作流程

    # 先 fork 项目到自己 github # 1. 从自己仓库克隆到本地(clone 的是项目指定的默认分支,比如 master) git clone git@github.com:me/em.gi ...

  6. github团队协作

    1.打开项目 2.将成员添加到项目成员内 3.创建分支 4.提交修改到远程仓库 5.发起讨论Pull requests 6.以讨论结果修改后,合并到master

  7. GitHub:本地项目上传与团队协作

    第一部分:我的本次作业成果 我自己个人的github地址是:colintz的个人仓库 我们开发团队小组的github地址是:小组3集中营 第二部分:强烈推荐的github资源 对于和我一样,初次接触g ...

  8. 论github客户端的使用与团队协作

    首先:如果你觉得小编写的一般般,那你就默念小编是渣渣,我相信你就会好起来的 -------------------------------------------------------------- ...

  9. 使用GitHub进行团队协作

    当进行团队协作完成一个项目时,GitHub是个不错的选择.下面是记录我和朋友做项目的时候协作的方法. 首先下载Github for windows 客户端,http://windows.github. ...

随机推荐

  1. [android] Android 错误集锦

    问题1:导入工程时报错The import android.XXX cannot be resolved 解决方法: 1.右键工程→Bulid Path→Configure Build Path... ...

  2. sendEvent()

    sendEvent()(QObject *receiver, QEvent *event)可以将自己创建事件event发送给制定的receiver 例如, //创建按键事件 QKeyEvent key ...

  3. MySQL常用shell语句

    1.连接数据库 格式:mysql -h ip -P port -u user -p 2.修改某一列的值 格式:update tablename set column1 = 'xxx', column2 ...

  4. e554. 在浏览器状态栏中显示信息

    // See also e551 精简的Applet applet.showStatus("Your Message Here"); Related Examples

  5. SimplifiedHibernate:简化了的Hibernate

    我的目的是实现下Hibernate中增删改查.缓存的核心功能.虽然基本功能实现了,但可能还有好多Bug,欢迎点评拍砖,没准能在一片谩骂声中取得意想不到的进步,:) // DatabaseAccess. ...

  6. HTC Desire 816 root教程和方法

    每个手机入手之后基本上都需要进行root,不root的话,手机里很多的无有软件都删除不了,咱们的HTC Desire 816也是一样的,也需要进行root才可以删除系统里自带的那些无用的软件,这些软件 ...

  7. unicode and utf-8

    今晚听同事分享提到这个,简单总结下. Unicode字符集 Unicode的出现是因为ASCII等其他编码码不够用了,比如ASCII是英语为母语的人发明的,只要一个字节8位就能够表示26个英文字母了, ...

  8. mysql的MyISAM 和 InnoDB 的区别?优化MYSQL数据库的方法?

    MyISAM 和 InnoDB 的基本区别 1.InnoDB不支持FULLTEXT类型的索引. 2.InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from tabl ...

  9. jenkins第一次登陆,输入完密码之后,卡在了SetupWizard[jenkins]处

    问题描述: 前几天在安装测试环境的jenkins,启动tomcat之后,通过页面进行登录,输入完初始化的密码之后,就一直卡在 SetupWizard[jenkins]这个地方. 问题如下图: 备注:等 ...

  10. SQL Server--实体再复习

    前些天小编所在的组织部重构.组长交给小编一项设计实体的活儿,它是我们软件灵魂(数据)的载体,实体的抽象影响到数据库设计,数据库设计的质量影响到整个程序的运营,以下是我设计的实体关系图: 系统核心业务逻 ...