2014-11-21 28 views
0

我一些混帐VSS工作的互操作和我接触过与SS同步我的git的主路被是git的重订错了/就在这种情况下(同步用的SourceSafe库git的主人)

  1. git checkout vss_branch

  2. ss get。 -W-R -Q-Y $ SSNAME

  3. git的结帐主

  4. git的重订vss_branch主

而且我不知道最后一部分,我的阅读方式它与提到的建议相矛盾here

这里的基本逻辑是,“vss_branch”总是只是VSS中当前任何东西的直接复制副本,“ss获得。 -W -R -Q -Y $ SSNAME“将所有内容从源代码安全地作为可写副本获取。

我把主人视为”我的构建分支“,所以我”合并“我的开发分支到那个时候我觉得自己的代码是阅读this advice我觉得我周围做了错误的方式之后,但是“建准备”

的原因,我现在更喜欢“混帐变基”,而不是“混帐合并”是混帐合并抛出了一堆冲突,而rebase没有......但这似乎很像“那个似乎工作,所以我会用那个”的方法。我担心,实际上git rebase会导致重复相同合并冲突一遍又一遍,如果我通过几个提交重复更改一段代码,并且其他人对同一段代码进行一些小改动。

我感谢所有帮助获取/让我在正确的轨道

回答

0

我碰到一个非常有趣的功能在混帐来到

git branch --set-upstream-to <branch/remote> 

这让我

git branch --set-upstream-to vss_branch 

这创造我实际想要的关系。在我确实做错了之前,因为vss_branch是主人的一个分支,并且rebase变得痛苦(更多更改=更多时间)。

这使我可以使用git pull,git push和vss_branch。

使用默认设置“git pull”只需将vss_branch拖放到主设备上。

但因为“主”和“vss_branch”不共享相同的名字,我不得不使用

"git push . HEAD:vss_branch" 

这解决了问题,但是如果你发现自己这样做,你做一些很奇怪。

更好的解决方案,因为Git是分布式的,可能是创建您的计算机上的另一个文件夹,你实际上设置为“原点”

例如:

git remote add <NAME> <PATH> 

将增加一个新的远程并且你可以

git remote add origin /c/path/to/alternate/folder 

这意味着你需要两个文件夹,但如果其中的一个是外部硬盘驱动器上的发言权,那么你实际上是增加你的数据保护。

在这一点上,你可以使用git push和pull,然后你将另一个文件夹当作你的“上游”,这就是我在这里所要做的,以及为什么我现在对“set-upstream”选项感到满意

它适合我,这在现实中意味着我想要的是“合并”,因为这是默认的“拉”。但我不能说这是正确的“答案”,因为这更符合我的工作流程和当前的意见“什么有效”