如何同步git svn存储库
过去三周我一直在使用git svn 目前我的工作流程是这样的。如何同步git svn存储库,git,git-svn,rsync,Git,Git Svn,Rsync,过去三周我一直在使用git svn 目前我的工作流程是这样的。 ssh进入我的开发盒 在那里创建/编辑/删除文件(git svn rebase、git checkout-b主题分支) 检查web应用程序是否工作正常 提交到svn。(git rebase主机、git签出主机、git合并主题分支、git svn DCOMIT) 问题 此工作流非常容易在dev box(ssh)上进行快速编辑。但是,随着远程编辑变得越来越慢,它变得越来越困难 注意:我无法在本地计算机上设置web应用程序的精确副本(因为
谢谢我可能遗漏了一些东西,但我认为
git svn
文档中的警告不适用于我下面建议的工作流。(顺便说一句,我假设您只愿意从dev box中提交git svn dcommit
)
excellent
的新主题分支。你在那家新分店做些工作refs/remotes/
下直接推入ref。例如,您可以执行以下操作:
git push origin excellent:refs/remotes/from-desktop/excellent
git checkout-b excellent/excellent”推送的ref创建一个新分支
git svn dcommit
之前仍然执行相同的顺序,即git rebase master
,git checkout master
,git merge-excellent
,git svn dcommit
我不明白为什么该工作流会给
git svn
带来问题,因为在执行git svn dcommit
之前,您会小心地重新确定工作基础,并将其合并到master
中。我使用的工作流与您的工作流相反,而且效果很好
我的意思是,我的git-svn-repo在本地框中,我推到dev框
有三种回购协议:
有时,我会在第8步之前进行交互式重基,以清理历史记录。“开发框有一个裸回购,工作区有应用程序签出。”工作区有应用程序签出意味着,你可以从裸回购克隆你的应用程序?。您能详细说明一下吗?当您必须在devbox(快速编辑)中进行编辑时,您会怎么做?您会提交并将其推送到裸回购?从您的本地邮箱发送svn数据文件?当我想要一台本地机器(比如笔记本电脑)时该怎么办。谢谢。@someisaac-为了清晰起见进行了编辑,如果您还有问题,请告诉我。关于另一台本地机器的使用:注意引入另一个回购协议增加的复杂性。一切都必须回到svn,您希望保持一个良好的线性历史记录。你可以在笔记本电脑上创建一个新的git svn repo,也可以克隆我在回答中描述的repo#1。在这种情况下,您必须找出同步到dev box最适合您的方式。谢谢,我将尝试此方式,如果有任何问题,请告诉您。您的工作流程很有趣,就我所尝试的而言,它工作得很好。但目前我正在使用@Mark Longair建议的方法。谢谢。在第三步进行更改后,我如何进行更改以进入本地计算机?从我的本地机器上拉一个git?“git pull origin会没事的吗?”someisaac:如果你想得到y