摘要:本文介绍了笔者多个本地工作节点(地方)的多台电脑(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仓库的更多相关文章

  1. 在服务器上搭建远端git仓库

    推荐使用运行Liunx的机器 请获取root权限后进行下面操作 安装git # 检查是否安装了git如果有版本号就无需再安装 git -v # 安装git sudo apt-get install g ...

  2. 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 ...

  3. 【Git/GitHub学习笔记】一键更新多个git仓库至远程

    因为同时在本地维护几个Github的仓库,每次更新后每个仓库要重复三步提交同步,有点麻烦. 发现可以写.sh文件来实现一键更新. 比如我要更新我的BlogBackup和CodeRepo两个仓库的代码如 ...

  4. 上传本地代码及更新代码到GitHub教程

    上传本地代码及更新代码到GitHub教程 上传本地代码 第一步:去github上创建自己的Repository,创建页面如下图所示: 红框为新建的仓库的https地址 第二步: echo " ...

  5. github小白上传本地代码及更新代码到GitHub及华为云教程

    上传本地代码 第一步:去github上创建自己的Repository,创建页面如下图所示: 红框为新建的仓库的https地址 第二步: echo "# Test" >> ...

  6. git--编写好代码文件后更新到git仓库流程

    先说一下git仓库分类: Git分为三大部分存储区域1:工作区域(就是你打开编辑器的本地代码仓库)2:提交缓存区域(使用git add 命令暂时放置的区域)3:git远程仓库(使用git push命令 ...

  7. 本地新建git仓库后与远端仓库关联

    背景说明:如果你想把自己的一个项目开源到,需要新建一个本地代码仓库,然后与远端代码库建立关.不想使用git clone 命令去克隆远端新建代码仓库,然后再将我们写好的代码copy到克隆下来的文件夹里, ...

  8. 解决因为本地代码和远程代码冲突,导致git pull无法拉取远程代码的问题

    一.问题 当本地代码和远程代码有冲突的时候,执行git pull操作的时候,会提示有冲突,然后直接终止本次pull,查了些资料没有找到强制pull的方式,但是可以使用如下方式解决. 二.解决思路 可以 ...

  9. 更新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 同意协议就好了.

随机推荐

  1. Python高手之路【二】python基本数据类型

    一:数字 int int(整型): 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值 ...

  2. Docker 第一篇--初识docker

    已经多年不写博客, 看完<晓松奇谈>最后一期猛然觉醒, 决定仔细梳理下自己这几年的知识脉络. 既然决定写, 那么首先就从最近2年热门的开源项目Docker开始.Docker 这两年在国内很 ...

  3. 算法与数据结构(十六) 快速排序(Swift 3.0版)

    上篇博客我们主要聊了比较高效的归并排序算法,本篇博客我们就来介绍另一种高效的排序算法:快速排序.快速排序的思想与归并排序类似,都是采用分而治之的方式进行排序的.快速排序的思想主要是取出无序序列中第一个 ...

  4. Linux 常用命令(持续补充)

    常用命令: command &:将进程放在后台执行 ctrl + z:暂停当前进程 并放入后台 jobs:查看当前后台任务 bg( %id):将任务转为后台执行 fg( %id):将任务调回前 ...

  5. 问题记录:EntityFramework 一对一关系映射

    EntityFramework 一对一关系映射有很多种,比如主键作为关联,配置比较简单,示例代码: public class Teacher { public int Id { get; set; } ...

  6. Kafka副本管理—— 为何去掉replica.lag.max.messages参数

    今天查看Kafka 0.10.0的官方文档,发现了这样一句话:Configuration parameter replica.lag.max.messages was removed. Partiti ...

  7. T-SQL字符串相加之后被截断的那点事

    本文出处:http://www.cnblogs.com/wy123/p/6217772.html 字符串自身相加, 虽然赋值给了varchar(max)类型的变量,在某些特殊情况下仍然会被“截断”,这 ...

  8. SQL中字符串拼接

    1. 概述 在SQL语句中经常需要进行字符串拼接,以sqlserver,oracle,mysql三种数据库为例,因为这三种数据库具有代表性. sqlserver: select '123'+'456' ...

  9. 录像时调用MediaRecorder的start()时发生start failed: -19错误

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  10. Visual Studio 2015正式发布

    Windows 10 RTM正式版要7月29日发布,微软的另一个重磅软件Visual Studio 2015已经率先发布,今天如期放出了正式版本.Visual Studio 2015包括许多新功能和更 ...