git - 在不检查分支的情况下查看 git diff?

标签 git

基本上,我有一个已部署的应用程序,我相信与 git 存储库保持同步,但我不确定。我在项目根目录中运行了 git init,并设置了正确的来源。我测试了连接,我能够连接到存储库并通过运行 git ls-remote --heads git@myurl.git 获取分支列表。我现在的问题是,有没有办法在不检查 master 的情况下使用 git diff 查看部署的应用程序是否与某个分支同步?如果我运行 git checkout master,git 究竟会做什么?

编辑:

问题是已部署的应用程序从未被 git 直接跟踪,它是在我的本地机器上跟踪的,我会通过使用 python gif diff 脚本生成所有更改文件的 tarball 来推送更新,我在已部署应用程序目录的根目录。今天我在 gitlab 中设置了一个部署 key ,这样我就可以在部署的应用程序上运行 git pull。我想一个更好的问题是,实现这一目标的最佳方式是什么?自从该应用程序被触及以来已经有一段时间了,我不知道是否有其他开发人员进入并进行了未跟踪的更改,我不想丢失对已部署应用程序所做的任何更改,所以我希望在那里是一种查看主应用程序和已部署应用程序之间差异的方法。

最佳答案

我想您担心的是您不想覆盖本地更改。

没问题-做就做

git fetch origin master
git diff FETCH_HEAD

或将 master 替换为上面的不同分支名称以区分不同的分支。

我还没有测试过这个,但是 git fetch 不会触及你的工作树,git diff 也不会,所以它应该是安全的。

关于git - 在不检查分支的情况下查看 git diff?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19734685/

相关文章:

linux - Unix Bash 脚本导致 git clone 无法工作

git - 如何让 Git 推/pull 通过 Windows 7 防火墙?

windows - 如何从 Windows 7 中删除 git 版本 1.9.4msysgit.2?

git - 在gitk中,为什么我的黄色按钮在master上面?

不撕裂函数的 git diff 算法? (语言感知差异)

git - 如何在没有寻呼机的情况下让 `git grep` 返回结果?

git - 无法解析主机 : bitbucket. 组织;节点名称或服务名称已提供,或未知

node.js - npm 和 git 命令行在 Windows 上非常慢;我怎样才能弄清楚为什么?

windows - 在 Windows 上使用 Linux 符号链接(symbolic link)克隆存储库

git - 检查之间的多个分支后如何挤压?