如何将 git bare repo HEAD 与其工作树位置进行比较
Posted
技术标签:
【中文标题】如何将 git bare repo HEAD 与其工作树位置进行比较【英文标题】:How can I compare a git bare repo HEAD to its work tree location 【发布时间】:2015-08-26 11:37:52 【问题描述】:我在我的服务器 (/var/project.git) 上设置了一个用于部署的裸存储库。此 repo 具有将代码推送到工作树位置文件夹 (/opt/api/project) 的挂钩
现在,我们已经着手对 /opt/api/project 中的一些文件进行了一些更改,但不确定需要在开发环境中进行哪些确切更改。
/opt/api/project/git 状态 不是 git 存储库
/var/project.git/git 状态 致命:此操作必须在工作树中运行
如何将磁盘上的文件与分支进行比较?
【问题讨论】:
目前还不清楚你的设置是什么,特别是“将代码推送到工作树位置文件夹的挂钩”到底在做什么,以及这句话中的“工作树”是否真正意味着什么它通常意味着 git 术语。从您发布的状态输出来看,您似乎不是通常 git 意义上的“推送”提交,因为目标不是 git 存储库。有了给定的信息,任何人都不太可能帮助您。 尝试猜测一下,您也许可以使用git --git-dir=/var/project.git --work-dir=/opt/api/project status
查看状态。如果这可行,您可能希望更改设置以更方便地使用。
【参考方案1】:
我会以通常的方式使用 git:
使用git clone
将 git 存储库克隆到 /var/ 中的 new 目录
将更改的源复制到新目录/本地存储库
这样,您将拥有一个正常存储库,您可以使用git diff
进行比较,git commit
提交或git push
推送到裸存储库.
【讨论】:
以上是关于如何将 git bare repo HEAD 与其工作树位置进行比较的主要内容,如果未能解决你的问题,请参考以下文章