2010-06-26 39 views
1

我现在开始阅读有关git-svn现在使用它与一个使用SVN的项目。需要一个git-svn工作流的建议,以保持个人文件远离svn

我想为我的某些文件(待办事项文件,暂存代码等),我想跟踪他们在Git存储库。是否有可能在Git中有一些文件,但不在SVN存储库中?

我虽然大约有分支master将与SVN仓库进行同步和我的工作保持到了其他分支(work),后来我将需要合并/推修改SVN之前变基workmaster和删除这些文件和提交/日志消息...似乎不切实际(我不知道该怎么做)。

我也在考虑在代码中添加很多评论,因为我很了解它,但其中大部分我都应该为我保留。

有没有人有工作流的建议,以保持一些文件远离SVN存储库?

或者我应该忘记这个想法,并有另一个git仓库吗?

回答

1

不要害怕分支和合并,这对于Git来说是非常容易的。只需将本地更改保存在单独的分支上,我们将其称为play,然后在master(我认为它与Subversion中继同步)或功能分支上完成其余工作。

从Subversion提取新的更改后,您可以在master之上重新设置play以获取最新的代码并解决潜在的冲突。如果您改变主意并决定发布一些play更改,您可以随时挑选master之上的单个提交并将其推送到Subversion。

+0

你的回答是对的,我在另一种情况下做了类似的事情(没有git-svn)。 然而,在这种情况下,最终我没有使用git-svn,因为有一些其他限制(例如,在svn服务器上对新文件设置了一些propset,而git-svn无法做到这一点)。 – dbarbosa 2010-11-21 01:24:58

0

为什么你的待办事项文件等需要与其他代码放在同一个存储库中?只需在您的机器上的其他位置创建一个新的存储库。

+0

最初,将它们放在同一个存储库中似乎更好。我已经编辑了这个问题来说明清楚。 但是,是完全有可能(和实际)只是有另一个存储库。 – dbarbosa 2010-06-26 16:51:59

0

如果你想要自己的东西贯穿你的git回购,看看mine

看起来像它的周围在全局gitignore 文件中的行*_mine_*,它可以让你有一个项目的结构,像这样的糖:

project-root/ 
    tempBugList_mine_ # git will ignore this file 
    readme.md 
    _mine_/   # everything in this dir will be ignored by git 
     notes 
     promotion-ideas 
    lib/ 
     fileone 
     filetwo 
    _mine_foodForThought # ignored by git too! 

mine可以snapshotclean,并且restore那些*_mine_*文件& dirs git clean和朋友不能吹走你的个人资料。