设为首页 收藏本站
查看: 917|回复: 0

[经验分享] 免费的Git私有代码托管服务

[复制链接]

尚未签到

发表于 2018-1-15 16:41:17 | 显示全部楼层 |阅读模式
  涉及到与别人协作,需要考虑找个私有的Git托管服务。
  Github很有名,也很好用,只是免费版仅能用于开源项目。
  经过一番比较,最后选定了两个。
  Bitbucket
  Atlassian公司的托管服务。
  ------------------------------
  Bitbucket
  支持Git、Mercurial,免费版有5个用户限制。公有和私有仓库都可以无限制创建,有协作工具(Issue tracker,Wiki)。
  Assembla
  支持SVN、Git、Mercurial,免费版,无用户限制,无仓库限制,存储空间1G,没有协作工具(Issue tracker,Wiki等)。
  考虑先使用 Bitbucket, 当用户不够用的时候再迁移到 Assembla。
  ===================================
  Git是目前非常流行的一款分布式版本控制软件,创立者是Linus For Linux,最初就是用来管理Linux Kernel开发的,后来大家伙觉得这玩意儿很好用,就逐渐流行开了。Debian、Perl、Gnome、Android等众多开源项目都采用Git进行版本控制,当然也包括Git本身以及Linux kernel在内。
  合作开发一个项目,代码不便公开,而GitHub的免费账户只能建立公共仓库,私人仓库需要交纳每月7$的费用。本着能节约就节约的想法,我开始寻找其他的途径来寄存Git仓库。在本机自行搭建服务器也可以,但是比较麻烦,这时想到了dropbox。
  dropbox有一个共享文件夹的功能,可以与他人分享指定的文件夹。这不就是一个现成的在线仓库吗?既方便多机多平台存取,又可以限定访问的人员。说干就干,在google一些资料后,立即开始从零搭建。
  我使用的平台是Snow Leopard 10.6.7,至于Linux/Win下面,也是大同小异。分别安装好Git和Dropbox客户端就可以开动了。
  首先,在Dropbox中新建一个文件夹并共享给协作者AA,假定该文件夹名字是repo。完成后,我和AA都可以对repo进行存取操作。接下来,打开终端,在repo中初始化一个远程仓库。
1 2 3 4 //我本机同步的dropbox文件夹位于~/Dropbox   cd ~/Dropbox/repo    //切换到repo目录 git --bare init      //初始化仓库  初始化git库有两种方式,git init和git --bare init。两者区别在于,执行git init将在当前目录下建立一个.git目录存放git库,当前目录则作为工作目录存放工程文件;而--bare参数则是将当前目录用做git库目录,而不再建立一个.git子目录。一般在本地初始化仓库使用git init,而初始化远程仓库则加上--bare参数。因为远程仓库一般只是用来存放git库而已,没人会在远程仓库中进行check out或者编辑文件等操作。
  第二步,将项目添加到Git库。
1 2 3 4 5 6 //假定我的工程目录位于~/MyProject   cd ~/MyProject      //切换到工程目录 git init            //在当前目录下初始化一个本地Git库 git add .           //将当前目录下所有文件添加到索引 git commit -m "first commit"     //提交  好了,现在MyProject下的所有文件都已被纳入Git的管理中。接下来还是在~/MyProject目录下,执行以下命令:
1 2 3 4 5 //将~/Dropbox/repo添加为远程仓库,别名叫做droprepo git remote add droprepo file://$HOME/Dropbox/repo      //将本地仓库master分支push到远程仓库 git push droprepo master  OK,现在打开~/Dropbox/repo,你会发现~/MyProject下的所有文件都已经更新到Git库中。你可以在任何同步了你的dropbox的地方执行下面的命令来clone一份仓库的内容:
1 2 //仓库地址,也就是你机子上同步的dropbox/repo的路径 git clone file://$HOME/Dropbox/repo  当然,共享了repo文件夹的协作者AA也可以在他的机器上执行上述命令来获得仓库内容。然后按照Git方式正常进行开发即可,在完成所有更新提交后,记得git push到远程仓库就可以了。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-435392-1-1.html 上篇帖子: git hub的GUI软件配置与使用 下篇帖子: Chen_s
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表