首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SVN Changelist的Git等价性?

SVN Changelist的Git等价性?
EN

Stack Overflow用户
提问于 2012-05-16 02:36:54
回答 2查看 8.9K关注 0票数 13

只是好奇Git是否有Subversions Changelist这样的特性,我发现它在运行时非常方便,我知道我可以运行以下内容:

代码语言:javascript
复制
cat 'changelistfileimade' | xargs git update

但是我很好奇是否也有一个内置的方法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-16 02:51:24

我自己从未使用过SVN changelists,但如果我理解正确的话,它允许您将文件分组到更改列表中,然后分别提交这些更改列表。(对吧?)

我不认为Git真的需要这样的功能。您已经可以单独暂存(git add)每个文件或其部分(git add -p),然后提交这些文件。您可以为每个更改列表创建分支,并在以后合并/更改这些分支的基址。或者,您可以创建多个提交,然后使用交互式rebase (git rebase -i)对它们进行重新排序。

您只需使用git show changelistbranch,而不是svn diff --changelist something

您不必推送这些本地/临时分支。没有人需要看到它们,直到你认为它们已经准备好被释放到野外。

你甚至可以命名你的“变更列表分支”:git branch changelist/name_of_your_changelist,然后你将所有的变更列表按照它们的前缀进行分组。

我是不是遗漏了什么?

票数 13
EN

Stack Overflow用户

发布于 2014-06-25 05:00:28

我在谷歌上搜索了一下,我想我已经找到了我在上面的评论中提到的TortoiseSVN ignore-on-commit changelist用例的替代品。正在讨论的命令是git update-index --assume-unchanged <path/name>。Git help有这样的说法:

--无假设-未更改

指定这些标志时,不会更新为路径记录的对象名称。相反,这些选项为路径设置和取消设置“假定未更改”位。当“假定未改变”位开启时,Git会停止检查工作树文件中可能的修改,所以当你改变工作树文件时,你需要手动取消设置该位来告诉Git。当在具有非常慢的lstat(2)系统调用(例如cifs)的文件系统上处理大项目时,这有时很有帮助。

此选项还可以用作粗略的文件级机制,以忽略跟踪文件中未提交的更改(类似于.gitignore对未跟踪文件所做的操作)。如果Git需要修改索引中的这个文件,那么它将失败(优雅地);例如,当合并到提交时;因此,如果假定的未跟踪文件在上游发生更改,您将需要手动处理这种情况。

我在Nick Quaranto's GitReady blog上找到了该选项的解释,其中包括以下内容:

显然,在这一点上有相当多的警告。如果您直接git add文件,它将被添加到索引中。在此标志打开的情况下合并提交将导致合并正常失败,因此您可以手动处理它。

但对我来说,这只是战斗的一半。下一步是知道你忽略了什么(希望记住为什么)。这是由this handy comment由Abe Voelker提供的一个名副其实的问题。只需使用代码片段编辑您的.gitconfig文件

代码语言:javascript
复制
[alias]
    ignored = !git ls-files -v | grep "^[[:lower:]]"

如果文件中已经存在[alias]位,请不要添加它。现在git ignored会告诉你类似这样的事情:

代码语言:javascript
复制
h configs/environment/local.php
h configs/logging/log4php.xml

您可以通过以下行进一步使用ignoreunignore的别名:

代码语言:javascript
复制
    ignore = update-index --assume-unchanged
    unignore = update-index --no-assume-unchanged
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10606809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档