2012-12-19 47 views
0

我在服務器上有一個遠程回購,我推送到分段目的。然後我有一個post-receive將其推送到http://stage.xxxx.com文件所在的文件目錄。從一個--bare回購推到另一個 - 在同一臺服務器上的回購

現在我已將所有東西都存放在我的臨時存儲庫中,並假定它是無缺陷的,我如何將它從暫存存儲庫推送到同一臺服務器上的現場存儲庫中?

我寧願不必將我的本地代碼直接推到生產git repo上,因爲我應該說我們不是最好的人來跟蹤這種東西。我是否必須直接登錄到服務器並從那裏進行實時回購?

回答

1

是的,你就必須直接登錄到服務器,該解決方案似乎有點過於複雜,因爲你可以做這樣的事情:

git fetch --all 
git push livesite staging/master:master 

這將推動分期的狀態/ master to livesite/master並且您不必跟蹤任何內容。

+0

既然我是這個時候在這個回購協議上工作的唯一人,那麼我只需要做一次git fetch操作 - 一次,對嗎?除此之外,它的工作原理完全正確!謝謝! –

+0

如果您的本地回購是唯一一個推向這些遙控器(並且不在服務器上的這些回購站中運行git命令),您應該始終具有這些回購的當前狀態。所以你應該從不**必須運行'git fetch'。我補充說,因爲我的'git push'命令會推送到活動網站,無論您的客戶端認爲當前是在暫存站點上 - 而不是暫存站點上的實際內容。 'git fetch'確保這些都是一樣的東西。如果你的客戶端已經是最新的,'git fetch'確實不需要。 – Chronial

相關問題