草庐IT

git - merge : Hg/Git vs. SVN

我经常读到Hg(以及Git和...)在merge方面比SVN更好,但我从未见过Hg/Git可以在SVN失败的地方(或SVN需要手动干预的地方)merge某些东西的实际例子。您能否发布一些分支/修改/提交/...-操作的分步列表,以显示在Hg/Git继续前进时SVN会在哪里失败?请实际的,不是非常特殊的情况......一些背景:我们有几十个开发人员使用SVN开发项目,每个项目(或一组类似的项目)都在自己的存储库中。我们知道如何应用发布分支和功能分支,因此我们不会经常遇到问题(即,我们曾经遇到过这种情况,但我们学会了克服Joel'sproblems“一个程序员给整个团队造成创伤”的问题”或

git - 我如何告诉 git-svn 在我获取 repo 后创建的远程分支?

我正在使用git-svn来处理我公司的中央Subversion存储库。我们最近在中央仓库中创建了一个新的功能分支。我如何将它告诉Git?当我运行gitbranch-r时,我只能看到当我对Subversion存储库运行fetch以初始化我的Git存储库时存在的分支? 最佳答案 可以手动添加远程分支,gitconfig--addsvn-remote.newbranch.urlhttps://svn/path_to_newbranch/gitconfig--addsvn-remote.newbranch.fetch:refs/remote

git-svn:如何通过 git 创建一个新的 svn 分支?

我有一个跟踪svn存储库的git存储库。我使用--stdlayout克隆了它。我通过gitcheckout-bfoobar创建了一个新的本地分支现在我希望这个分支在svn存储库的…/branches/foobar中结束。我该怎么做?(截取了大量调查性文本。如果您愿意,请查看问题历史记录) 最佳答案 我知道这个问题已经回答了一段时间,但在阅读之后,我可能会帮助添加特定gitsvnbranch命令的示例并将其与典型的工作流程相关联。就像kch回答的那样,使用gitsvnbranch。这是一个完整的示例,(注意用于空运行测试的-n):gi

svn - 为什么 Git 比 Subversion 好?

锁定。这个问题及其答案是locked因为这个问题是题外话,但具有历史意义。它目前不接受新的答案或互动。我一直在用Subversion几年后使用SourceSafe,我就是喜欢Subversion。结合TortoiseSVN,我真的无法想象它会如何变得更好。然而,越来越多的开发人员声称Subversion存在问题,我们应该转向新一代的分布式版本控制系统,例如Git.Git如何改进Subversion? 最佳答案 Git并不比Subversion好。但也不差。这不一样。关键的区别在于它是去中心化的。想象一下,您是一名在路上的开发人员,您

svn - 如何让 'git log' 显示像 'svn log -v' 这样的文件名

SVN的日志有一个“-v”模式,输出每次提交中更改的文件的文件名,如下所示:jes5199$svnlog-v------------------------------------------------------------------------r1|jes5199|2007-01-0314:39:41-0800(Wed,03Jan2007)|1lineChangedpaths:A/AUTHORSA/COPYINGA/ChangeLogA/EVOLUTIONA/INSTALLA/MacOSX有没有一种快速的方法来获取Git中每次提交中更改文件的列表?

svn - 如何将具有历史记录的 SVN 存储库迁移到新的 Git 存储库?

我阅读了Git手册、常见问题解答、Git-SVN速成类(class)等,他们都解释了这个那个,但是你找不到像这样的简单说明:SVN仓库在:svn://myserver/path/to/svn/reposGit仓库在:git://myserver/path/to/git/reposgit-do-the-magic-svn-import-with-history\svn://myserver/path/to/svn/repos\git://myserver/path/to/git/repos我不希望它这么简单,也不希望它是一条命令。但我确实希望它不会试图解释任何事情-只是说明在这个例子中要

linux - 自动添加带空格的 SVN 命令行

我有一个SVN存储库。我有一个shell/bash脚本,旨在自动将所有未版本化的文件添加到存储库。它看起来像这样:svnstatus|grep'^?'|sed's/^.*/svnadd/'|bash;这完美地工作,除了我的一个新文件的文件名中有空格。我该如何修改这个命令来处理这个问题? 最佳答案 为避免此处出现引用问题,您应该完全避免shell调用并改用xargs,这也将加快该过程:svnstatus|grep'^?'|sed-e's/^?*//'|xargs--no-run-if-empty-d'\n'svnadd这将处理大多数特

linux - 如何在与 unison 同步时排除 svn 元数据?

如何在与unison同步时排除所有svn元数据? 最佳答案 就我而言(版本2.40.65),公认的解决方案不起作用。它仅适用于直接位于我正在同步的根目录中的.svn文件夹。下面一行有效地忽略了:ignore=Name{.svn}Unisonmanual对于版本,我使用的版本2.40.65证实了这一点。 关于linux-如何在与unison同步时排除svn元数据?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow

linux - SVN 命令清除分支间更改的文件列表

我试图在subversion中找到正确的命令,以查看分支/标签A和分支/标签B等之间所有已更改(不需要真正查看更改)的文件列表。 最佳答案 svndiff--summarize怎么样?您也可以使用svndiff--help获得更多选择和svnstatus--help获取所有可能的修改描述字母(“A”、“M”等)的解释 关于linux-SVN命令清除分支间更改的文件列表,我们在StackOverflow上找到一个类似的问题: https://stackoverf

linux - 没有最新结帐的 SVN 列表目录?

命令svnlist会给我当前目录中所有子目录的列表。但是,它仅限于当前版本中存在的目录。例如。假设存储库url是:“http://www.example.com/svncode/mainproduct/trunk”在trunk里面,有3个目录trunk/1/2/3/如果我执行svnlist,它将显示所有目录123。现在其他人在主干中进行了提交,这在主干中添加了另一个目录4。有没有一种方法可以在不先进行更新的情况下检查该目录是否存在?因为svnlist只提供最新的svnupdate之前的信息,而不是之后发生的变化。背景:我想检索trunk中存在的最新目录(最大数字表示最新,在本例中为4)