我正在开发一个脚本以便与git diff一起使用,以便能够“过滤”仅仅移动到文件中的行。使用Designer文件时,Visual Studio 2008已经变得非常痛苦。它有时似乎坚持以不同的顺序重写整个文件。这使得很难看到文件的真实变化。我将git diff管道输入到脚本中来调整git diff的输出。我可以从输出中删除线条,或者我可以用不同的符号代替+/-来指示移动,但我不确定要使用哪些符号。Git Diff - 指示行移动
4
A
回答
0
这不是问题的答案,而是所描述问题的可能替代解决方案。
我不熟悉Visual Studio 2008或Designer文件,但我遇到了一个解决方案,我想将文件存储在由其他程序生成的git中。某些文件中的行顺序完全无关紧要。在其他文件中,顺序并不重要,但简单的排序不够充分,因为它包含嵌套的数据结构。
我的解决方案是在git中使用过滤器在提交之前更改文件内容。这被配置成两部分。首先,您需要使用.gitattributes
文件为文件分配一个过滤器。
*.list filter=sort
接下来,过滤器的行为需要在配置文件中定义。这可以在您的用户配置~/.gitconfig
或在回购配置.git/config
中完成。这只是本地的,并不会与其他人自动共享作为回购协议的一部分,所以如果您希望其他人也这样做,那么您需要告诉他们。
[filter "sort"]
clean = sort
smudge = cat
这种简单的过滤器的结果是,当文件被提交,而不是从创建它们的程序随机的顺序是该行回购,他们是字母数字,只添加,删除排序,并在差异中出现变化。
现在我提到我有两种不同的文件类型,一个简单的和一个复杂的。对于包含嵌套数据类型的复杂数据类型(Lua表具体),我创建了一个脚本来读取文件内容,对每个嵌套节进行排序并输出排序结果而不改变行为当数据被使用时。
相关问题
- 1. “git diff”中的“diff --git”输出是指什么?
- 2. 同时显示git diff和git状态
- 3. `git stash --patch`显示的行改变了`git diff` /`git status`没有显示
- 4. perforce diff to git
- 5. git diff日期?
- 6. Git diff忽略
- 7. Git diff pattern
- 8. 实时git diff
- 9. Git diff with textutil
- 10. 移动存储库后git diff报告模式发生变化
- 11. Diff git fork
- 12. Git Diff with Beyond Compare
- 13. 我可以让git add -p显示像git diff --word-diff一样的变化吗?
- 14. git-diff:只显示提交的变化
- 15. 指示棋盘移动
- 16. Git word-diff to html
- 17. 推动AWS CodeCommit后的Git diff
- 18. 从Git GUI启动diff工具
- 19. 有没有办法让git diff显示的行发生变化?
- 20. git log -p vs git show vs git diff
- 21. GIT diff HEAD中的奇怪行为
- 22. Git diff工具重置为git默认
- 23. 关于diff命令在GIT
- 24. 如何使用git diff -G?
- 25. 意外导致的git-DIFF
- 26. git diff-tree显示删除但没有删除git日志
- 27. git:为什么git diff不显示任何差异?
- 28. 添加/删除标签不会显示在git status或git diff?
- 29. 复制文件的Git diff
- 30. Git diff发疯了吗?
我对这项工作很感兴趣,但我很难在那里找到问题。你到底在问什么? – grossvogel 2011-03-01 19:29:48