我有一個活分支,需要拉(git拉)在活服務器上,但活服務器不能訪問bitbucket。如何在沒有git訪問的情況下同步遠程網站上的git分支?
雖然我在遠程服務器上使用login/pass(無法使用ssh-key)ssh訪問,但是同步遠程服務器上的指定分支(更新和刪除更改的文件)的最佳方法是什麼?
我有一個活分支,需要拉(git拉)在活服務器上,但活服務器不能訪問bitbucket。如何在沒有git訪問的情況下同步遠程網站上的git分支?
雖然我在遠程服務器上使用login/pass(無法使用ssh-key)ssh訪問,但是同步遠程服務器上的指定分支(更新和刪除更改的文件)的最佳方法是什麼?
我使用rsync解決了這個問題。
使用rsync我可以檢查巫婆文件被修改,並在遠程服務器上不同。
我還創建了一個名爲build.exclude.sync文件女巫包含了每一個目錄我想跳過,並且在終端,我可以使用:
rsync -avz --exclude-from=build.exclude.sync /home/path/to/local/dir/ -e ssh [email protected]:/path/to/remote/dir/
我用rsync的與Apache Ant自動生成proccess 。在我的build.xml文件中:
<exec executable="rsync" dir="." failonerror="true">
<arg line="-avz --exclude-from=build.exclude.sync ${prod.local.deploydir} -e ssh ${prod.sshusername}@${prod.sshhost}:${prod.homedir}"/>
</exec>
使用scp
將文件從可以訪問bitbucket而不是使用git的機器複製到服務器。從位桶獲取cron作業。使用後接收鉤啓動scp命令。
scp不會刪除已刪除的文件。我錯了嗎? – 2012-07-17 12:17:19