Git:本地回购中的文件与原始文件之间的差异?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (35)

我想找出我在本地回购的文件和原主文件之间的区别。

我知道有gitdiff,但是我只想将它隔离到这个特定的文件。

为了简单起见,让我们假设文件名为file1.txt,并且它有一个本地文件路径=局部_路径在原点上,它有filepath=远程路径...

我需要输入的git命令是什么?

提问于
用户回答回答于

如果[remote-path][local-path]是一样的,你可以

$ git fetch origin master
$ git diff origin/master -- [local-path]

附注1:上面的第二个命令将与本地存储的远程跟踪分支进行比较。要将远程跟踪分支更新为与远程服务器的内容同步,需要使用FETCH命令。或者,你可以

$ git diff master:<path-or-file-name>

附注2:master可以在上面的示例中用任何分支名称替换。

用户回答回答于

若要查看远程文件与本地文件之间的差异,请执行以下操作:

git diff remotename/branchname:remote/path/file1.txt local/path/file1.txt

从另一个方向来看待差异:

git diff HEAD:local/path/file1.txt remotename/branchname:remote/path/file1.txt

基本上,可以在任何地方使用以下符号来区分任意两个文件:

git diff ref1:path/to/file1 ref2:path/to/file2

像往常一样,ref1ref2可以是分支名称、远程名称/分支名称、提交SHAs等。

扫码关注云+社区