我使用陆龟SVN和IntelliJ IDEA进行本地开发。源代码位于SVN存储库中 我想要的东西,就像当地的一样,我可以在当地工作,有历史和基本的好处: 本地提交,审核历史,来回历史/还原,合并修订 - >最后的svn提交
是一种工具来存档,而不需要太多的开销和搞乱事情的风险。 也许喜欢使用本地svn工作副本作为" DMZ"在本地工作和中央SVN存储库之间。
有没有办法这样做?只需简单解释所需的基本步骤。
1)"检查" out form" svn working copy"
2)改变一些事物
3)本地提交
4)改变某事
5)本地提交
6)改变某事
7)本地提交
8)眉头当地历史
9)在当地历史中得到点
10)改变一些事物
11)地方承诺
12)sqash hisroty部分
13)承诺" svn工作副本"合并的变更
14)提交到svn服务器
答案 0 :(得分:1)
当您使用IntelliJ IDEA时,还可以选择使用名为本地历史记录的漂亮功能。
您可以在菜单VCS -> Local History -> Show Local History
中找到它
它是一个简单的修订清单,并显示了差异
在那里,您可以恢复到特定版本或仅在那里进行图片更改。还有机会在当地历史上对标签进行标注。为了以后更好地找到它们
但请记住,本地历史记录不是真正的版本控制系统(崩溃时可能会损坏,没有分支......)!
默认情况下,它会跟踪文件5个工作日。 (这可以在IDEA注册表中配置,也可以通过VM参数(-DlocalHistory.daysToKeep=30
))进行配置
我发现这是一个很好用的功能。
尝试的另一个选择是使用 git-svn 。它更强大但也更复杂。例如。: 设置 - >得到一个本地克隆(这将花费相当长的时间)并设置git忽略与svn相同。
git-svn clone -s http://example.com/subversion/repo local/working/with/git-svn/directory
git-svn show-ignore > .gitignore
此时,您可以使用命令在本地计算机上使用git正常工作...
git checkout -b <feature branch>
git add .
git checkout <file name>
git reset HEAD <file name>
git commit -a
git checkout master
git merge <feature branch>
要在新功能分支上创建工作,请将更改的文件添加到索引中,如果愿意,可以将其提交,提交,返回主分支并将更改合并到主服务器。
最后将更改提交到中央svn
git -svn rebase
git -svn dcommit
下载SVN更改并对其应用本地更改,然后将其提交给SVN。
答案 1 :(得分:-1)
您所描述的内容更适合分布式版本控制系统,例如Git
或Mercurial
。
但是如果你想坚持使用Subversion,你可以设置你的代码库的本地SVN存储库(使用TortoiseSVN做&#34;在这里创建存储库&#34;)。然后定期从本地到远程执行svn merge
。