Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git混淆了本地和远程,还是我?_Git - Fatal编程技术网

Git混淆了本地和远程,还是我?

Git混淆了本地和远程,还是我?,git,Git,我不明白本地和远程在这方面意味着什么,我觉得git在这方面有缺陷 我对x.py做了一些修改。一位同事也更改了同一个文件,提交并推到我面前。在执行任何操作之前,我将文件的版本复制到了x.py.mine中。 我试着去承诺和推动,但它被拒绝了,我产生了冲突。目前的情况如下 Size Date File 57795 May 7 15:59 x.py.BACKUP.16533.py 54921 May 7 15:59 x.py.BASE.16533.py 54812 May 7

我不明白本地和远程在这方面意味着什么,我觉得git在这方面有缺陷

我对x.py做了一些修改。一位同事也更改了同一个文件,提交并推到我面前。在执行任何操作之前,我将文件的版本复制到了x.py.mine中。 我试着去承诺和推动,但它被拒绝了,我产生了冲突。目前的情况如下

Size  Date         File

57795 May  7 15:59 x.py.BACKUP.16533.py
54921 May  7 15:59 x.py.BASE.16533.py
54812 May  7 15:59 x.py.LOCAL.16533.py
57151 May  7 16:08 x.py.mine
57151 May  7 15:59 x.py.REMOTE.16533.py
请注意git如何将我的文件标记为“远程”,将同事的文件标记为“本地”。对我来说,应该正好相反。我有一个本地文件,同事放了一个远程文件,是我从远程服务器得到的


这是git的错误还是我的错误?

您可以尝试仔细检查.gitconfig mergetool选项,以确保作为参数传递给vimdiff的本地和远程引用的顺序正确。例如,my.gitconfig如下所示(我使用p4merge)

我可以尝试将其更改为以下内容,但实际上,指定的顺序并不重要

[mergetool "p4merge"]
    cmd = p4merge.exe $BASE $REMOTE $LOCAL $MERGED

作为合并工具使用的Vimdiff正在生成这些文件(默认情况下,Git只会添加帮助。”Mark:只有工程师会认为SuneGit不会产生这些文件:你是使用TurtoSigit之类的东西吗?@ CxBraya:普通Git,显然是这样的。可能是Git CytoToLi?我使用VimDoffon马克的评论(以及我对代码的理解> Git ReBase< /Cord>),可能会问:您是如何尝试推送的?您到底运行了哪个命令?我检查后发现:
LOCAL
是“包含当前分支上文件内容的临时文件”,而
REMOTE
是“包含要合并的文件内容的临时文件”,所以这显然取决于git如何解析本地分支以及如何合并文件,所以对我来说,这取决于您如何尝试推送
[mergetool "p4merge"]
    cmd = p4merge.exe $BASE $REMOTE $LOCAL $MERGED