【转载,实测好用】gitlab结合sourcetree使用
转载 的出处http://blog.csdn.net/u012764358/article/details/62886427
Gitlab和Sourcetree结合使用实现代码管理
这是本人第一次发表博客,如有不足或者缺陷,请批评指正,希望能够更好的学习。最近刚来到一家老外的公司,他们使用的代码管理工具是gitlab,由于之前没使用过gitlab,所以,安装这个软件也费了老大的劲。现在把整个过程分享给大家,希望能给更多的人带来方便。
准备工作
- 安装git
- 安装sourcetree
- 注册gitlab账号
配置SSH Keys
SSH是目前较可靠,转为远程登录会话和其他网络服务提供安全的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。Git就采用了SSH加密传输协议,加密传输的算法有很多,git可以使用RSA,RSA的核心就是使用一对特定的数字,使用其中一个数字可以用来加密,而另外一个数字可以用来解密。这两个数字就是你在使用git、github和gitlab的时候所遇到的public key 也就是公钥以及private key 私钥。公钥是用来加密的数字,这也就是为什么本级生成了公钥之后,要上传到gitlab、GitHub的原因。从GitHub或gitlab发回来的用公钥加密过的数据,可以用你本地的私钥来还原。如果key丢失,不管是公钥还是私钥,丢失哪一个都不能用,需要重新生成一次然后在gitlab账户中再设置一次就可以了。下面就讲一下如何生成SSH KEYS。
![打开sourcetree工具选中右上角的命令行模式](http://img.blog.csdn.net/20170317142830974?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMjc2NDM1OA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)在命令行中输入以下命令生成gitlab服务端和本地git所需要的公钥和私钥:ssh-keygen -t rsa -C "你在gitlab上注册的邮箱地址" ,接着会提示你输入密码(这个没有必要输入,我本人没有输入),然后执行到出现一个矩形框的时候就OK了。这是你会发现C盘当前用户目录下多了一个.ssh文件夹,打开.ssh文件夹会发现两个文件id_rsa和id_rsa.pub,前面的就是私钥,后面的是公钥,用记事本将公钥打开,copy到gitlab->SSH Keys->Key中,copy之后Title中会显示你的邮箱账号(该title是可以随意命名的)。完成之后点击Add key按钮。到这里gitlab端的公钥就配置好了。我们要用到sourcetree来下载代码到本地还要对sourcetree来进行设置。
- 1
- 2
- 3
- 4
Sourcetree设置
打开sourcetree工具,选择工具->选项->一般->SSH客户端:选中OpenSSH(见下图所示),之所以要选择OpenSSH是因为,如果不进行选择的话clone代码的时候会报公钥错误。
使用sourcetree拉取代码到本地
sourcetree ->克隆/新建
源路径就是gitlab中的项目地址,copy过来就行了,目标路径自己设置好了,之后点击克隆,等一会代码就下载好了,你会看到sourcetree的界面如下:
多人开发的时候,是不允许在master分支上进行的,需要建立自己的分支
建立开发分支
选择需要创建分支的版本
点击上方的分支按钮进行创建分支
创建分支完成后还要点击推送按钮,是为了在远端创建分支,到时候需要先将本地的代码提交推送到远端的分支,然后在gitlab上发起merge request请求,由管理者进行develop和master分支的合并操作。
推送之后,我们到gitlab去查看会发现多了一个分支develop。
提交更新代码
选择分支->文件状态如下图
我们可以选中未暂存的文件,选择Statge Selected按钮,文件就会到已暂存文件区域,在下方输入框内输入更新说明,然后点击提交,到这一步只是存到了本地仓库,还需要点击推送按钮,这时才会更新远程develop分支,接着打开gitlab,点击merge request,发出请求合并。至此整个流程完毕,欢迎大家指正,转载请注明出处。
【转载,实测好用】gitlab结合sourcetree使用的更多相关文章
- 转载:centos安装gitlab详解
原文地址:http://blog.csdn.net/jiangtao_st/article/details/73612298 一, 服务器快速搭建gitlab方法 可以参考gitlab中文社区 的教程 ...
- 持续集成-sourcetree的安装、使用记录
1.参考 http://blog.sina.com.cn/s/blog_672143a30102vold.html 2.问题-安装sourcetree后,打开时提示下载但是连接不上相应链接 自行下载g ...
- Git和SourceTree配合使用
Git介绍 git是当今最强大的本地的分布式代码版本管理工具. git的核心概念与操作:开发环境,本地仓库,远程仓库.他们的关系如下图: 与CVS及SVN的比较: CVS及SVN都是集中式的版本控制系 ...
- iOS开发中的零碎知识点笔记 韩俊强的博客
每日更新关注:http://weibo.com/hanjunqiang 新浪微博 1.关联 objc_setAssociatedObject关联是指把两个对象相互关联起来,使得其中的一个对象作为另外 ...
- SourceTree安装教程和GitLab配置详解
一.安装Git 链接: http://pan.baidu.com/s/1mh7rICK 密码: 48dj 二.安装SourceTree 链接: http://pan.baidu.com/s/1skWk ...
- sourcetree和gitlab配置图解
一.前期准备安装 1.git客户端(1.产生gitlab服务端和本地git相互传输时所需要校验的私钥和公钥 2.直接在Idea中使用git提交和push代码,当然也可以用sourcetree提交 ...
- 3、SourceTree通过PUTTY连接GitLab
一.生成公钥和私钥 使用命令行生成(两种生成方式选择一种即可) 1.安装SourceTree打开SourceTree,点击“命令行模式”. 2.输入如下命令生成key“example@example. ...
- 转载:Gitlab备份和恢复操作记录
转载:Gitlab备份和恢复操作记录 包含了备份和数据恢复的操作记录,实验可行 前面已经介绍了Gitlab环境部署记录,这里简单说下Gitlab的备份和恢复操作记录: 1)Gitlab的备份目录路径设 ...
- GitLab+Rancher实践DevOps【转载】
摘要 本文描述使用自建GitLab和Rancher实践持续集成/持续交付流水线的过程,并用Rancher实现容器编排和蓝绿发布. GitLab持续集成 GitLab持续集成/持续交付流程图:部署Git ...
随机推荐
- 多个网络请求成功返回再执行另外任务的思路分析(iOS)
前言 今天我们来讨论一个经常出现的需求场景,也是一个老话题.在开发中我们往往会遇到需要进行多个网络请求,并且需要多个网络请求成功返回后再做其他事的场景.比如同一个界面显示的内容需要用到两个网络接口,而 ...
- BEM(一种 CSS 命名规则)
一. 什么是 BEM BEM的意思就是块(block).元素(element).修饰符(modifier),是由 Yandex 团队提出的一种前端命名方法论. 这种巧妙的命名方法让你的 CSS 类对其 ...
- SQL单行函数和多行函数
单行函数和多行函数示意图: 单行函数分为五种类型:字符函数.数值函数.日期函数.转换函数.通用函数 单行函数: --大小写控制函数 select lower('Hello World') 转小写, u ...
- get_class_methods--返回由类的方法名组成的数组
get_class_methods--返回由类的方法名组成的数组 array get_class_methods ( mixed $class_name ) 返回由类的方法名组成的数组. <?p ...
- C语言一个细节地方的说明【防止使用不当而出错】
1.运行如下的代码: #include <stdio.h> #include <string.h> int main() { int a; a=1; int s[4]; mem ...
- Javascript中一些常用的宽与高
在使用javascript制作一些网络特效时,往往要根据显示网页的显示器的一些参数展开进行.所以一些关于显示器的参数如何得到显得十分重要.下面是一些常用的显示器参数,不妨好好记一下吧! 网页可见区域宽 ...
- oracle 计算时间差
1.计算时间差(相隔星期,天数,小时,分钟,秒) SELECT TO_CHAR(date1,'MMDDYYYY:HH24:MI:SS') date1, TO_CHAR(date2,'MMDDYYYY: ...
- 最全面的linux信号量解析
信号量 一.什么是信号量 信号量的使用主要是用来保护共享资源,使得资源在一个时刻只有一个进程(线程) 所拥有. 信号量的值为正的时候,说明它空闲.所测试的线程可以锁定而使用它.若为0,说明 它被占用, ...
- JavaScript 对时间日期格式化
JavaScript 对时间日期格式化 // 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位 ...
- java: Comparable比较器,定义二叉操作类
//定义二叉操作类 class BinaryTree{ class Node{ private Node left; //左指数 private Node right; //右指数 private C ...