有没有办法使用 git/console 命令将本地 [non-git] 文件树直接与远程 git 存储库进行比较?

Is there a way to compare local [non-git] file tree directly to a remote git repo using a git/console command?

所以我的本地文件树只是一个没有 git 存储库的文件树。

我想知道是否有一种简单的方法可以在不在本地 directory/machine 中创建 git 存储库的情况下将完整目录与远程 git 存储库进行比较?

'Easy' 表示不在此处复制完整的文件夹树。因为那是我已经想到的唯一解决方案,但是对于这样的事情来说这似乎是一种拖累。

其实是有解决办法的:

for i in $(find -type f );
do
diff $i <(curl -s https://raw.githubusercontent.com/<user_name>/<repo_name>/master/$(echo $i | cut -c 3-))
done

此命令会将您的本地文件与 GitHub 存储库 <user_name>/<repo_name> 进行比较。

对于 Gitlab

for i in $(find -type f );
do
diff $i <(curl -s https://<gitlab_instance>/<project_name>/<repo_name>/raw/master/.gitlab/$(echo $i | cut -c 3-))
done

此命令会将您的本地文件与 <project_name>/<repo_name>.

进行比较

如果您使用的是私人仓库,那么您可以相应地修改 curl 命令并提供您的访问令牌或密码。有关详细信息,请参阅 Curl