Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.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 如何轻松地消除工作目录和远程目录之间的差异,跳过本地repo?_Git - Fatal编程技术网

Git 如何轻松地消除工作目录和远程目录之间的差异,跳过本地repo?

Git 如何轻松地消除工作目录和远程目录之间的差异,跳过本地repo?,git,Git,我正在寻找一种方法来显示我的本地工作目录和远程目录之间的增量,即其他人推了什么+我上次拉后做了什么更改。在这种比较中,我并不关心本地存储库,因此我不希望拉,然后状态。我正在寻找类似于直接针对远程服务器的工作目录状态的信息。如果运行,您将从远程服务器获得所有更新,而无需对本地分支进行任何修改。然后,您可以执行git diff remote/whatever以获得与remote上whatever分支的当前状态的差异 如果它有用,您可以通过执行git branch-a或git branch-r查看存储

我正在寻找一种方法来显示我的本地工作目录和远程目录之间的增量,即其他人推了什么+我上次拉后做了什么更改。在这种比较中,我并不关心本地存储库,因此我不希望
,然后
状态
。我正在寻找类似于直接针对远程服务器的工作目录状态的信息。

如果运行,您将从远程服务器获得所有更新,而无需对本地分支进行任何修改。然后,您可以执行
git diff remote/whatever
以获得与
remote
whatever
分支的当前状态的差异

如果它有用,您可以通过执行
git branch-a
git branch-r

查看存储库知道的所有远程分支,如果您运行,您将从远程获得所有更新,而无需对本地分支进行任何修改。然后,您可以执行
git diff remote/whatever
以获得与
remote
whatever
分支的当前状态的差异


如果它有用,您可以通过执行
git branch-a
git branch-r

查看存储库知道的所有远程分支,值得一提的是,这不会像OP所要求的那样“将工作目录直接与远程目录区分开来”。来自远程的更改被提取到本地历史记录中,更准确地说,提取到“远程跟踪分支”中。使用Git,
diff
s只能在本地数据上发生,而不能“直接”在远程设备上发生。+1@nevkrehnel。这是绝对正确的;甚至远程分支在git中也是本地的。如果这有意义的话……这就是为什么我在引号中加上“远程跟踪”;命名有点不幸,即使它确实有一些意义(只是强调“远程跟踪”)——我认为Git开发人员正在讨论重命名它们以使其更加清晰,但这个名称已经出现在很多文档中。不管是谁,Git最重要的一点是
——一切都是本地的
;)远程跟踪意味着其他的东西;一个(真实的)本地分支,在执行
git pull
时将从一个特定的远程分支进行更新。正如我们自己的讨论所示,对于这三个变体(远程分支、远程跟踪分支、跟踪分支)没有达成适当的共识。我从未找到任何术语的定义。虽然他们称之为“远程分支”,但我和我认识的几个人在
refs/remotes/*
中涉及到事情时通常会说“远程跟踪分支”,而对于跟踪上游分支的本地分支来说则是“跟踪”——但我们离题了:)值得一提的是,这并没有将“工作目录直接与远程目录”区分开来正如OP所问。来自远程的更改被提取到本地历史记录中,更准确地说,提取到“远程跟踪分支”中。使用Git,
diff
s只能在本地数据上发生,而不能“直接”在远程设备上发生。+1@nevkrehnel。这是绝对正确的;甚至远程分支在git中也是本地的。如果这有意义的话……这就是为什么我在引号中加上“远程跟踪”;命名有点不幸,即使它确实有一些意义(只是强调“远程跟踪”)——我认为Git开发人员正在讨论重命名它们以使其更加清晰,但这个名称已经出现在很多文档中。不管是谁,Git最重要的一点是
——一切都是本地的
;)远程跟踪意味着其他的东西;一个(真实的)本地分支,在执行
git pull
时将从一个特定的远程分支进行更新。正如我们自己的讨论所示,对于这三个变体(远程分支、远程跟踪分支、跟踪分支)没有达成适当的共识。我从未找到任何术语的定义。虽然他们称之为“远程分支”,但我和我认识的几个人通常在
refs/remotes/*
中提到事情时会说“远程跟踪分支”,对于跟踪上游分支的本地分支则会说“跟踪”——但我们离题了:)