Git版本控制:Gitlab及Coding.net的使用
http://blog.csdn.net/pipisorry/article/details/50709014
Gitlab介绍
GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。
它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。在线DEMO
注册gitlab
出错:There was an error with the recaptcha code below. Please re-enter the code:
Because recaptcha is provided by google, but it is blocked in China, so you probably need VPN in order to get the code.
recaptcha就是这个验证码,类似12306,需要FQ才能看到。
之后就可以看到gitlab相关的功能了。
在gitlab上创建一个项目
安装git并配置本地git[Git版本控制教程 - Git本地仓库]
配置远程设置[Git版本控制教程 - Git远程仓库]
这样就可以通过git push -u origin master提交代码了
Coding的介绍和使用
国内较好的代码托管平台有coding.net等
初始操作
注册coding.net Git 代码托管 - Coding.net
coding上创建项目
可以创建私人项目和公有项目
私人项目不仅保密还有更多功能,如上传文件到文件夹中的功能。公有项目只能将word文档也加入到git管理中来上传文件。不过私有项目只能创建10个,多了要付费。
安装git
配置本地git并提交
pika:/media/pika/files/mine/python_workspace/RecSys/TianChi$
$ git init
$ git config --global user.name "pipilove"
$ git config --global user.email "***@126.com"
$ git add .
$ git commit -m 'init commit'
远程ssh-rsa公钥配置
$ssh-keygen -t rsa -C "***@126.com"
设置SSH-RSA公钥内容:账户》ssh公钥》填上任意Title(如pipi ubuntu) > 在Key文本框里粘贴id_rsa.pub文件(pika:~$ cat .ssh/id_rsa.pub )的内容 > “Add Key”
$git remote add origin git@gitlab.com:***.git #git地址在项目>代码>SSH 方式访问仓库:copy
Note: git变更项目地址: git remote set-url origin git@***.git; 查看git提交和拉取地址: $ git remote -v; 查看git配置:git config --list
$git push -u origin master #这样就可以通过git push -u origin master提交代码了
多分支处理
$git branch dev
$git merge dev
$git checkout dev
$git push origin dev
这时最好就处在dev分支上进行代码开发
添加项目好友:成员》项目成员添加+》马上邀请好友》你的专属邀请链接》发给项目其它成员进行注册。成员注册完成后会自动关注项目管理者,项目管理者要在成员添加的粉丝中添加这个好友就可以了。
如成员已注册直接在 成员》项目成员添加+》添加邮箱搜索再添加进来就可以了。
协作者操作
注册coding.net:上面项目管理者发的注册链接。
等待项目所有者添加你到上面创建的项目中
安装git
远程ssh-rsa公钥配置:
$ssh-keygen -t rsa -C "***@126.com"
设置SSH-RSA公钥内容:coding账户》ssh公钥》填上任意Title(如pipi ubuntu) > 在Key文本框里粘贴id_rsa.pub文件(pika:~$ cat .ssh/id_rsa.pub )的内容 > “Add Key”
$git remote add origin git@gitlab.com:***.git #git地址在项目>代码>SSH 方式访问仓库:copy
创建一个代码存放目录,再拉取运程coding项目中已存在分区:git pull origin dev
上传限制
注意:coding上传文件大小没有100m限制,不过每个免费的项目代码加起来不能超过1G。超过1G会报错:
Coding.net Tips : [Repo size exceeded quota : 1024M. See https://coding.net/upgrade for more details.]
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
Coding.net部署公钥
如果只是想让别人看而不是上传,可以使用部署公钥。部署公钥用以部署项目,只拥有只读权限,且不能跟个人公钥通用。
部署公钥在:项目》设置》部署公钥》新建》填上任意Title(如pipi ubuntu) > 在Key文本框里粘贴id_rsa.pub文件的内容 > “Add Key”
git push会出错:$git push -u origin master
Coding.net Tips : [Deploy key is not allowed to push!]
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
Deploy keys only have read-only access to the repo. If you wish to push, you need to add an SSH key to your user and make sure git is using that key, not the deploy key.
from: http://blog.csdn.net/pipisorry/article/details/50709014
ref:
Git版本控制:Gitlab及Coding.net的使用的更多相关文章
- Git版本控制及gitlab私有仓库
Git版本控制系统 版本控制系统简介 版本控制系统是一种记录一个或若干个文件内容变化,以便将来查阅特定版本内容情况的系统 记录文件的所有历史变化 随时恢复到任何一个历史状态 多人协作开发 常见版本管理 ...
- Git与GitLab
Git与GitLab 一.Git Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个 ...
- 七 Git版本控制
把环境准备 主机名 node1 ip地址10.0.0.11 node2 10.0.0.12 node3 ...
- 利用Git版本控制管理你的项目
准备工作 项目创建完成后,将项目版本控制起来,今后每个版本的迭代会非常清楚,同时也有助于项目进行协同开发. 还有一个十分重要的问题是:项目上线后,线上的运行的程序的配置与线下进行测试的配置文件是不一样 ...
- python后端面试第六部分:git版本控制--长期维护
################## git版本控制 ####################### 1,git常见命令作用 2,某个文件夹中的内容进行版本管理:进入文件夹,右键git bash 3, ...
- Jenkins持续集成git、gitlab、sonarqube(7.0)、nexus,自动化部署实战,附安装包,严禁转载!!!
导读 之前用的都是SVN,由于工作需要用到Git,求人不如求己,技多不压身,多学一项技能,未来就少求别人一次,系统的学一遍,自己搭建一整套环境,自动化部署(自动发版),代码质量检测等等(为啥不用doc ...
- GIT 版本控制常用命令学习汇总
GIT 版本控制常用命令汇总 git version 查看当前git版本信息 git help 获取全部命令帮助信息 git help <command> 获取指定命令帮助信息 git c ...
- Git版本控制与工作流
基本概念 Git是什么? Git是分布式版本控制系统,与SVN类似的集中化版本控制系统相比,集中化版本控制系统虽然能够令多个团队成员一起协作开发,但有时如果中央服务器宕机的话,谁也无法在宕机期间提交更 ...
- Git版本控制教程
Git 版本控制入门 不了解Git请查看权威Git书籍 ProGit(中文版). 一份很好的 Git 入门教程,点击这里查看. Git客户端下载地址: 官方Git - TortoiseGit - So ...
随机推荐
- js求和运算在可变参数的情况下ES3、ES5和ES6的写法区别
//ES3.ES5的写法 function foo(){ var arr = Array.prototype.slice.call(arguments); var sum = 0; arr.forEa ...
- Mobx使用详解
Mobx是一个功能强大,上手非常容易的状态管理工具.就连redux的作者也曾经向大家推荐过它,在不少情况下你的确可以使用Mobx来替代掉redux. 本教程旨在介绍其用法及概念,并重点介绍其与Reac ...
- day07 Cookie 和 Session(非常重要)
day07 Cookie 和 Session 1. 会话技术 2. cookie 的方法和 cookie 案例-显示用户上次访问网站的时间 3. cookie 的细节 - 删除 cookie 4. S ...
- 让互联网更快,Server Push 特性及开启方式详解
过去 Nginx 并不支持 HTTP/2 的 Server Push 特性,幸运的是 Nginx 1.13.9 已支持该特性,详情介绍请移步 Nginx 官方博客. Server Push 这个特性是 ...
- 深入浅出低功耗蓝牙(BLE)协议栈
深入浅出低功耗蓝牙(BLE)协议栈 BLE协议栈为什么要分层?怎么理解蓝牙"连接"?如果蓝牙协议只有ATT没有GATT会发生什么? 协议栈框架 一般而言,我们把某个协议的实现代码称 ...
- 剑指架构师系列-MySQL常用SQL语句
(1)分清HAVING与WHERE的区别: HAVING 子句使你能够指定过滤条件,从而控制查询结果中哪些组可以出现在最终结果里面.WHERE 子句对被选择的列施加条件,而 HAVING 子句则对 G ...
- RTMPdump(libRTMP)源代码分析 4: 连接第一步——握手(Hand Shake)
===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...
- 简单将sublime text 配置为lua或c#一键编译运行环境
lua { "cmd": "luajit $file", "selector":"source.lua" } C { & ...
- 安卓高级 特效动画ExplosionField和 SmoothTransition
本教程所有图片为github上的所无法正常访问请科学上网 SmoothTransition 展示效果 github:源码地址 使用方法 你能通过一行代码使用上面所有的动画 @Override prot ...
- VirtualBox: How to config higher screen resolution
Issue: Default Screen Resolution in Virtualbox instance is 800*600 which might be too small for gene ...