Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 我应该如何在双引导Macintosh上使用Subversion和Time Machine?_Git_Svn_Timemachine - Fatal编程技术网

Git 我应该如何在双引导Macintosh上使用Subversion和Time Machine?

Git 我应该如何在双引导Macintosh上使用Subversion和Time Machine?,git,svn,timemachine,Git,Svn,Timemachine,使用Eclipse,我正在开发和维护Java桌面应用程序。我的Mac用户的OS X版本从10.6到10.9。我的开发机器有两个磁盘分区,可以启动运行Apple Java 6的OS X 10.6或运行Oracle Java 7的OS X 10.8。(请注意,10.6不能运行Java7;10.8不能运行Java6。)我有一个外部磁盘,Time Machine在该磁盘上备份两个OSX分区 我想维护一个应用程序的两个版本,每个Java版本一个。大多数源代码在不同版本之间是相同的。在处理特定版本时,我从适

使用Eclipse,我正在开发和维护Java桌面应用程序。我的Mac用户的OS X版本从10.6到10.9。我的开发机器有两个磁盘分区,可以启动运行Apple Java 6的OS X 10.6或运行Oracle Java 7的OS X 10.8。(请注意,10.6不能运行Java7;10.8不能运行Java6。)我有一个外部磁盘,Time Machine在该磁盘上备份两个OSX分区

我想维护一个应用程序的两个版本,每个Java版本一个。大多数源代码在不同版本之间是相同的。在处理特定版本时,我从适当的分区启动

我正在寻找一种使用Subversion进行源代码版本控制的策略。我可以将存储库放在任意一个OSX分区上(无论哪个分区是当前启动分区,这两个分区都是可见的),但我相信只有当我从同一分区启动时,Time Machine才会对其进行备份。我可以将存储库放在外部磁盘上,但时间机器不会备份它。我住在一个农村地区,那里没有宽带互联网,所以任何远程或“云”存储库都不可用

例如,我已经启动到10.6,编辑了一些文件,然后想重新启动到10.8进行一些回归测试,在这种情况下,我可以看到潜在的问题。我不想在每次重新启动之前签入所有文件,然后在每次重新启动之后再次签出它们

我特别喜欢Time Machine备份的便利性和将我的机器恢复到已知状态的能力。必须采用单独的策略来备份Subversion存储库是不可取的


<>我从来没有使用过Git,但会考虑它。

< P>我建议你使用GIT集中式VCS根本不适合你的情况-哪个磁盘是中心的?我认为两者都不是。有了DVC系统,就没有中央回购,这正是您计划的工作方式

使用git,每个克隆都是存储库的完整副本*。时间机器真的不需要介入

  • 只要按下所有分支/标记
这是我建议你如何安排的

在一个磁盘上初始化git repo,默认分支(“trunk”)是每个版本的共同代码

cd <your project>
git init
cd
初始化
为需要支持的每个java版本创建一个分支

git branch <name>
git分支
将repo克隆到另一个磁盘,并将每个磁盘设置为彼此的远程

git clone <path>
git remote add <name> <path to other box>
git克隆
git远程添加
现在,您只需在要处理的框上签出要处理的分支,并确保在提交后按


我肯定在上面的代码片段中漏掉了一两个git命令,只要原则明确

有人向我指出,Time Machine可以配置为在内部和外部磁盘上的任何卷和所有卷上执行备份,而不仅仅是在启动卷上。这使我的问题变得毫无意义:我可以将存储库放在任何地方,然后确保在每个操作系统卷上正确配置时间机器