有没有一种方法可以使用git/console命令直接将本地[非git]文件树与远程git repo进行比较?

有没有一种方法可以使用git/console命令直接将本地[非git]文件树与远程git repo进行比较?,git,diff,Git,Diff,所以我的本地文件树只是一个没有git repo的文件树 我想知道是否有一种简单的方法可以将完整目录与远程git repo进行比较,同时不在本地目录/机器中创建git存储库 “Easy”意味着此处没有复制克隆上的完整文件夹树。因为这是我能想到的唯一解决方案,但这似乎是一个阻力。实际上,有一个解决方案: for i in $(find -type f ); do diff $i <(curl -s https://raw.githubusercontent.com/<user_name&

所以我的本地文件树只是一个没有git repo的文件树

我想知道是否有一种简单的方法可以将完整目录与远程git repo进行比较,同时不在本地目录/机器中创建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
以美元为单位的i的
(查找-类型f);
做

没有
git
实际上只知道如何管理本地存储库。它对远程存储库所能做的唯一事情就是“发送更改”或“接收更改”。在*nix中,您通常有一个工具
diff
,它的工作原理类似于
git diff
(只是比提交/工作树更通用,在文件/目录上)。那就行了。您对console命令的问题是否包括这一点?@LinFelix我最终创建了一个单独的克隆,检查正确的提交以比较本地文件夹,然后运行
diff
命令以比较两个目录。这似乎很管用。但我想我希望有一些神奇的git函数。梦想永远不会错;)@TommyBravo理论上,如果您有相同的提交(在每个存储库中只比较一个分支时),您就知道两个repolsitories是相同的,因为如果任何单个提交内容不同,哈希将不同,然后每个子提交也会不同,因为它有不同的父级。@LinFelix是的,我知道,但是我在比较某个提交的“导出”中的本地更改(严格来说,本地文件夹不是git repo)。我已经确定在文件夹中进行了一些更改,但我不确定具体在哪些文件和哪些行中。感谢您的回答,但我使用了“本地”gitlab实例而不是github。这可能意味着我必须登录才能从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