我被建议在远程服务器上进行设置
foo.com/~/bar.com # live webpage content
foo.com/~/bar.com.git # a bare repo
Run Code Online (Sandbox Code Playgroud)
所以,从我的本地机器,我可以做到
git push
Run Code Online (Sandbox Code Playgroud)
它会推到foo.com/~/bar.com.git远程机器上(完整的路径是ssh://peter@www.foo.com/~/bar.com.git
如何添加一个钩子,以便在推送之后,远程服务器将cd ~/bar.com执行git pull以便更新所有内容(与本地计算机相同)?(不需要git update为Mercurial 运行吗?)
(这是关系到不能混帐克隆一个服务器上的文件夹,然后编辑和git推? 现在我可以ssh到foo.com并cd ~/bar.com和那里等候,做一个git pull每当经过一个git push从本地机器,但它会是不错的它自动完成)
更新:如果您了解具体细节以及如何操作,请仅发布答案.如果您谷歌并在此发布第一个或第二个谷歌结果,它将无济于事.
更新2:我去了~/bar.com.git/hooks并添加了一个post-receive包含内容的新文件:
#!/bin/bash
cd ~/bar.com
git pull ../bar.com.git master
Run Code Online (Sandbox Code Playgroud)
而且chmod 755 post-receive,如果我编辑本地计算机上的文件,然后git com -m "ok"和git push,它不进行更改进入远程机器的文件夹~/bar.com
有没有办法可以使用 gitpython 在远程存储库上获取最新提交?我不想在本地分支上执行拉取或合并之类的操作。我也不想依赖本地的 master 分支来获取这些信息。我所拥有的只是一个有效的回购协议,我正在使用它repo.remotes.origin.url来获取信息。
仅使用 repo URL,我可以获得该存储库的最新提交吗?