Git是否支持任何允许我直接从本地/工作树提交到远程存储库的命令?正常的工作流程需要“git add”,至少要用文件内容的副本填充对象数据库等。
据我所知,这不是正常的,预期的Git工作流程。但我注意到Git已经支持直接从存储库下载,没有本地存储(“git archive”),所以可能存在类似的上传操作似乎是合理的。
或者,如果核心Git本身没有这样的命令,那么第三方软件是否支持直接远程写入?
答案 0 :(得分:2)
据我所知,没有(不是直接,最后看到我完成的答案):
以下是本地和远程仓库之间的official Git data workflow:
alt text http://osteele.com/images/2008/git-transport.png
如您所见,git add
与索引相关,并且不会影响您的本地回购。
所有命令集都可以帮助实施一些publication policies:
alt text http://osteele.com/images/2008/commit-policies.png
直接影响具有本地更改的远程仓库的唯一方法(因为工作目录中的更改完全不为Git所知)将是:
git diff -p origin > diff_not_in_origin.patch
发送补丁并看到“origin”服务器有某种触发器,git am
自动补丁。
答案 1 :(得分:1)
我自己没有尝试过,但您可以尝试使用CVS访问您的git存储库,使用“git cvsserver”。您仍然需要本地工作副本,但它只包含一个项目文件副本和一些CVS元数据。