相关疑难解决方法(0)

如何列出提交中的所有文件?

我正在寻找一个简单的git命令,它提供了一个格式良好的所有文件列表,这些文件是散列(SHA1)给出的提交的一部分,没有任何无关的信息.

我试过了:

git show a303aa90779efdd2f6b9d90693e2cbbbe4613c1d
Run Code Online (Sandbox Code Playgroud)

虽然它列出了文件,但它还包含每个文件的不需要的差异信息.

是否有另一个git命令只提供我想要的列表,以便我可以避免从git show输出中解析它?

git git-show

2619
推荐指数
28
解决办法
138万
查看次数

Git Interactive Merge?

我有两个分支与完全相同的文件(如果你想知道它是一个.sql文件),我想以交互方式合并它.

我想要在出现冲突(或命令行)时像我一样打开一个差异程序,并准确选择哪些行去哪里.

反正有没有这样做?

git version-control

68
推荐指数
4
解决办法
5万
查看次数

如何在git中关注文件

我在git中删除了几次文件,但随着其他分支的合并,它会再次出现; 我猜是这样的:

                      o--  a topic  --o
                     /                 \
o-- [create file] --o-- [delete file] --o-- [file exists again]
Run Code Online (Sandbox Code Playgroud)

由于我们使用"内部版本"使用git,因此我特别难以掌握正在发生的事情,即我创建了我推出的发布分支,我们的发布经理将其拉出并合并到master并且我拉动他的主人.

如何找到我(或其他人)删除文件的位置以及重新引入文件的合并?谢谢!

git git-remote git-branch

7
推荐指数
1
解决办法
3146
查看次数

git merge忽略合并分支上存在的已删除文件(重命名文件)

我有树枝feature1master.
然后feature1我将文件重命名dir/file.txtdir2/file2.txt.
之后我改变了文件,master一周之后也改变了文件feature1.

我在整个项目中改变了40个文件.
当我尝试合并masterfeature1我使用低重命名阈值时.大多数文件都是正确自动合并的.提供了一些文件用于手动解决冲突.

但是一些具体文件既不会出现在merge自动合并的响应中,
也不会正确合并
.在正确的情况,我期待我可以解决的两个结果中的一个:
1.它不会检测重命名,只是将另一个添加dir/file.txtfeature1分支中.
它会检测重命名并让我手动解决冲突.

我查看时有很多变化
git difftool master:dir/file.txt feature1:dir2/file2.txt

因此我假设git识别重命名并决定保留我的版本而不通知我发生了什么.我该如何解决/调试呢?

这是我使用的命令

git config merge.renameLimit 9999999999
git merge --no-ff -Xrename-threshold=20 -Xignore-space-change master
Run Code Online (Sandbox Code Playgroud)

Upd1

在使用feature1分支时,我已删除了dir/file.txt.
也许git假定这个文件应该删除,因此忽略它的存在master.
重命名检测失败,尽管文件的相似性保持不变(levenshtein距离小于内容长度的2%)
另一个讨论建议"手动合并"将文件从分支复制到分支.

UPD2

正确解析了其他一些文件正确解析
CONFLICT (rename/delete): images/ab.gif deleted in master and renamed in HEAD. …

git merge

7
推荐指数
1
解决办法
2563
查看次数

标签 统计

git ×4

git-branch ×1

git-remote ×1

git-show ×1

merge ×1

version-control ×1