多本地代码工作点更新到2个远端GIT仓库
摘要:本文介绍了笔者多个本地工作节点(地方)的多台电脑(PC/笔记本电脑)同步源码到2个远端的GIT(一个GITHUB国外强制公开,一个oschina国内可不公开)。
作者:太初
转载说明:请指明原作者,连接,及出处。
正文
大多数IT工作者,或者直接点程序员,总是上网查资料,往往会提2种问题:
A.自己有个想法X,查看网上是否有类似经验的人,告知这条路,这个方法是否走得通?X是否可行?(期望得到答案,少走弯路,怕浪费精力)
B.确认想法X或方法可行,但苦于不知道细节,只能查网络资料,比如到博客园看看(期望找到STEPBYSTEP的良心贴,指导自己用最小的代价完成任务)
本帖,主要目的是完成A,因为笔者不太善于清晰的表达和文档工作,我时间也有限,但如果可以,稍微给出些B方面的提示也尽量能达成。
我个人通过查资料和实践,达成如下情况,供各位有A类疑问的参考:
1.我本地有4个工作地点(比如:P1,P2,P3,P4),每个地方都可以上网,并连接到GITHUB和GIT.OSCHINA.NET;
2.我有GITHUB和git.oschina.net(码云)两个GIT仓库,前者是世界最著名但免费一定要公开项目,后者是中国最大可托管1000个私人不公开项目;
3.我经常在P1,2,3,4的四个地方的6台PC(或笔记本)上通过eclipse做以JAVA为主的程序开发(程序开发是为了研究问题,比如数学,数据分析,计算等),eclipse上安装了GIT的插件,无需在WIN等操作系统下单独安装GIT(GIT仓库+GIT界面GUI工具),直接通过eclipse的GIT插件就能连接2个远端GIT仓库,用它们的账号密码,连接它们https协议的git仓库地址,提交代码push,下拉同步代码pull;
4.主要流程:
4a. 初建空项目:首先在某个GIT远端仓库建立项目(可以有初始README文件等),在eclipse中的“import project”->“GIT”->“project from git”->“Clone URI”,然后再dialog中填入这个GIT远端的HTTPS协议的git仓库地址,类似“https://git.oschina.net/userXXX/projectYYY.git”,并填好“user/password”,eclipse会自动解析,只要仓库地址正确,账号密码有效,就会解析出master分支,选好本地路径(我推荐比如“D:\source\git\projectYYY”),并一路ok下去,最终你发现是空项目,因为它是新建的项目,并不是一个eclipse能解析的项目(没有eclipse的.project文件)。于是你按照eclipse的建议导入文件,输入上面的project本地路径,完成。
4b. 合并现存项目:往往我们不是从零开始,本地有一个原型项目和一些代码了(也许是eclipse项目),建议你将本地项目的src/lib手动拷贝到4a中新建的空项目,然后让它在eclipse中编译正常,没有红色感叹号,也没有红色大叉。然后再eclipse中右键此projectYYY出现鼠标菜单,选择“Team”->“commit...”,将刚才新放入的提交到本地git的缓存index(也叫stage)中,然后才可以push到远端;没问题就提交了,还是右键鼠标菜单,选择“Team”->“Push up to stream”。
4c. 配置多个GIT远端仓库:在保证4b顺利完成,推到第一个GIT远端仓库(可以通过IE登录在线查看push的对不对)后,在“push up to stream” 里面有一个“URI”配置,可以配置多个GIT远端(这里你一定要将第一个GIT,和新增加的第二个GIT都加入),下次push就从本地push到2个GIT远端仓库!
4d.平时工作:除了第一次在某个远端GIT建立new project外,平时,另一个工作地点P1都可以直接pull拉下来最新的内容;只要是同一个人自己开发,应该merge都是自动且成功的,不应该有冲突,除非中间某次自己忘记提交,才有可能冲突!
5.这样的好处是,不用再用“无结构的云盘”或更无法管理的U盘来同步代码。而且是能将代码同步到一个国内最大,一个国外最大的代码托管在线GIT仓库。只要有网络,随时可编程,非常好。另外注意GITHUB免费试用是无任何空间时间数量限制,只是必须要开源公开,请特别注意,不要放入敏感信息!
源码弄不好,coding就不舒服,搞好环境,弄妥build和源码托管很重要,软件工程是必不可少的。
祝君好运。
多本地代码工作点更新到2个远端GIT仓库的更多相关文章
- 在服务器上搭建远端git仓库
推荐使用运行Liunx的机器 请获取root权限后进行下面操作 安装git # 检查是否安装了git如果有版本号就无需再安装 git -v # 安装git sudo apt-get install g ...
- 2018-01-28-M个本地工作点代码同步到N个GIT远端
layout: post title: 2018-01-28-M个本地工作点代码同步到N个GIT远端 key: 20180128 tags: IT GIT modify_date: 2018-01-2 ...
- 【Git/GitHub学习笔记】一键更新多个git仓库至远程
因为同时在本地维护几个Github的仓库,每次更新后每个仓库要重复三步提交同步,有点麻烦. 发现可以写.sh文件来实现一键更新. 比如我要更新我的BlogBackup和CodeRepo两个仓库的代码如 ...
- 上传本地代码及更新代码到GitHub教程
上传本地代码及更新代码到GitHub教程 上传本地代码 第一步:去github上创建自己的Repository,创建页面如下图所示: 红框为新建的仓库的https地址 第二步: echo " ...
- github小白上传本地代码及更新代码到GitHub及华为云教程
上传本地代码 第一步:去github上创建自己的Repository,创建页面如下图所示: 红框为新建的仓库的https地址 第二步: echo "# Test" >> ...
- git--编写好代码文件后更新到git仓库流程
先说一下git仓库分类: Git分为三大部分存储区域1:工作区域(就是你打开编辑器的本地代码仓库)2:提交缓存区域(使用git add 命令暂时放置的区域)3:git远程仓库(使用git push命令 ...
- 本地新建git仓库后与远端仓库关联
背景说明:如果你想把自己的一个项目开源到,需要新建一个本地代码仓库,然后与远端代码库建立关.不想使用git clone 命令去克隆远端新建代码仓库,然后再将我们写好的代码copy到克隆下来的文件夹里, ...
- 解决因为本地代码和远程代码冲突,导致git pull无法拉取远程代码的问题
一.问题 当本地代码和远程代码有冲突的时候,执行git pull操作的时候,会提示有冲突,然后直接终止本次pull,查了些资料没有找到强制pull的方式,但是可以使用如下方式解决. 二.解决思路 可以 ...
- 更新Mac OSX XCode后Git 不能使用提示Can't start Git: /usr/bin/git
更新Mac OSX XCode后Git 不能使用提示Can't start Git: /usr/bin/git 解决办法: 终端运行 sudo xcodebuild -license 同意协议就好了.
随机推荐
- Unity3d学习 制作地形
这周学习了如何在unity中制作地形,就是在一个Terrain的对象上盖几座小山,在山底种几棵树,那就讲一下如何完成上述内容. 1.在新键得项目的游戏的Hierarchy目录中新键一个Terrain对 ...
- Python高手之路【二】python基本数据类型
一:数字 int int(整型): 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值 ...
- DDD初学指南
去年就打算总结一下,结果新换的工作特别忙,就迟迟没有认真动手.主要内容是很多初学DDD甚至于学习很长时间的同学没有弄明白DDD是什么,适合什么情况.这世界上没有银弹,抛开了适合的场景孤立的去研究DDD ...
- Android N开发 你需要知道的一切
title: Android N开发 你需要知道的一切 tags: Android N,Android7.0,Android --- 转载请注明出处:http://www.cnblogs.com/yi ...
- 谈谈一些有趣的CSS题目(一)-- 左边竖条的实现方法
开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...
- [自翻]fasthttp中文文档(持续更新)
fasthttp是由valyala编写的声称快于Go官方标准库net/http包十倍的快速HTTP实现.从各方的性能测试结果来看(评测一.评测二),fasthttp作为当下最快的http Go语言包当 ...
- [C#] 走进异步编程的世界 - 开始接触 async/await
走进异步编程的世界 - 开始接触 async/await 序 这是学习异步编程的入门篇. 涉及 C# 5.0 引入的 async/await,但在控制台输出示例时经常会采用 C# 6.0 的 $&qu ...
- Android如何制作漂亮的自适布局的键盘
最近做了个自定义键盘,但面对不同分辨率的机型其中数字键盘不能根据界面大小自已铺满,但又不能每种机型都做一套吧,所以要做成自适应,那这里主讲思路. 这里最上面的titlebar高度固定,下面输入的金额高 ...
- CentOS下mysql数据库常用命令总结
mysql数据库使用总结 本文主要记录一些mysql日常使用的命令,供以后查询. 1.更改root密码 mysqladmin -uroot password 'yourpassword' 2.远程登陆 ...
- GJM : C#设计模式汇总整理——导航 【原创】
感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...