2015-09-13 63 views
1

錯誤地,我最近「刪除」了一個分支到我在GitHub分支的克隆中。在注意到這個錯誤之後,我試着「重新激活」這個分支,但我意識到這個行爲似乎在上游存儲庫中創建了「拉取請求」。因此,我已決定將此分支完全刪除到我的克隆中,以便以任何方式不影響上游源。關於管理分支到GitHub克隆

這個「意外事故」,我對分支機構的管理的一些問題,爲GitHub的克隆後:

  1. 我可以放心地在我的克隆刪除一個分支(特別是如果這個分支似乎不再活躍在上游) ?
  2. 是有可能從上游各分支機構(默認活躍陳舊分支機構)完全同步到我的克隆?
  3. 是否更好地只保留一個獨特的分支到我的克隆(特別是如果我的目標主要是保持從上游更新)?
  4. 我可以創建一個特定的分支到我的克隆中,而不會以任何方式影響上游(如自動請求拉)嗎?

回答

1

我可以安全地刪除我的克隆中的一個分支(特別是如果這個分支似乎不再在上游活躍)?

是,原來的回購(由您克隆的分支)將不會受到影響

是有可能從上游各分支機構(默認情況下,主動和陳舊的分支機構)完全同步到我的克隆?

這通常是你的機器上完成的:當地的前叉的克隆有兩個遙控器:

  • origin:你的GitHub叉
  • upstream:原回購(git remote add upstream https://github.com/<user>/<repo>

您可以從upstreamreset --hard中取得您分支到upstream/<branch>的任何本地分行。然後推到origin
這與更新專用於PR的新分支不同:請參閱「Troubleshooting the workflow to incorporate upstream changes into forked repo」。

是否更好地保留唯一的主分支到我的克隆(特別是如果我的目標主要是保持從上游更新)?

你可以在克隆上保留你想要的任何分支。什麼事是額外的分支您創建以修復一個bug:PR應該從新的分支完成。
這就是我在「couple of tips for PR (Pull Requests)」中提到的。

我可以創建一個特定的分支進入我的克隆而不會影響上游任何方式(如自動化的請求)?

是的,您可以:再次在您的機器上的本地克隆上執行此操作,然後推送到您的分支,然後從GitHub上的分支執行您的PR。

+0

感謝您的詳盡答覆。 也許你可以證實我意外的PR嘗試是由於我直接在我的_remote fork_(origin)上刪除了一個分支,而不是在我的_local clone_中? –

+0

@GizMecano確實是可能的:叉上的新分支(一旦你推回叉上的本地分支,你之前刪除了同一分支)將被視爲PR的候選人。 – VonC

+0

謝謝你的澄清。我想那就是發生了什麼事。 –