2015-08-27 48 views
0

有人可以幫我找出我需要完成以下步驟:增加一個分支遠程倉庫和推 - 工作流程

一個分支添加到遠程倉庫中現有項目並提交和推到那個分支。

我出於某種原因,過於複雜的GIT,並且經歷了艱難的時間尋找資源來幫助我弄清楚我想做什麼。

我想通過終端完成此操作。

我會先連接到遠程倉庫,然後創建一個分支,然後在該分支上使用git init?

一旦我完成了某個實現,那麼我會再次使用終端連接到該分支,'檢出',提交併推送?從那時起,我所做的每一項改變都只是一次推動?

目前只有一個主分支,所以我希望我的本地項目實際包含來自該主分支的所有代碼(無論如何,因爲我分支了它),只需將我的更改推送到分支需要...

回答

0

只需推分支,它將在遠程創建,如果它不存在。

例如:

git clone http://myRemoteRepo 
git checkout -b myNewBranch # Create a new local branch since it's what you seem to want 
#do some dev 
git commit -am "My awesome commit" 
git push origin myNewBranch # It will create myNewBranch in myRemoteRepo 

爲了回答您的評論的問題:

  • 一旦你簽出一個分支,只要你不籤任何東西,你會留在那個分支上。您可以查看當前分支是使用git branch

  • 當我們使用git push origin myNewBranch我們實際上是說給混帳:「推到你所知道的‘出身’遠程請問你從我的本地分支推「myNewBranch」,並推到遠程分支「myNewBranch」」

所以,這是不是你簽出這對你推什麼


的影響Ť母雞git初始化該分支

請注意,這是沒有意義的:你不git init分支:你初始化一個新的回購。然後你可以在這個倉庫上創建分支。

更多,你通常只有init一次,在項目的最初。即:當你想在本地複製一個回購,那麼,你只需克隆它,你不需要任何東西git init

+0

我從字面上方一開始並試圖弄清楚我的思維過程是否有意義。雖然這可能會回答原來的問題,但我試圖更多地瞭解事情的流程以及爲達到期望的最終結果所採取的實際步驟。 –

+0

對我最後一段進行了編輯。我在這方面的錯誤,讓我看起來像是想推給主人。 –

+0

假設我將爲此項目使用xcode:我克隆了原始的repo併成功創建了一個名爲BB的分支並檢出到該分支。我是否簡單地打開克隆的回購,開始在現有項目上做一些工作,並提交併推送我的更改?早些時候在終端上檢查分支是否會繼續作爲偏好,意味着從此以後所有推送都會進入該分支?對不起,不斷問,但你的答案正在幫助我接近! –

0
  1. 首先混帳克隆遠程回購git clone XXXXX
  2. 得到你想要做的工作git reset --HARD <whereYouWantToStart>
  3. 可能使自己的分支點git checkout -b yourBranchName
  4. git的添加/混帳提交更改
  5. 無論是將你的工作合併回一些開發或主分支`git checkout master; git merge yourBranchName'
  6. 將結果推回git push origin master' or 'git push origin yourBranchName
+1

另外,在開始之前,您可能想閱讀Git的參考資料。好消息是,有大量的免費教程,例如http://git-scm.com/book/en/v2/Getting-Started-About-Version-Control。壞消息是,你將不得不花費一些時間(可能每天1/2或閱讀)來啓動和了解更多。 – DavidN

+0

順便說一句,Code School有一個免費的課程,名爲「嘗試Git」https://www.codeschool.com/courses/try-git讓你瞭解基礎知識。它可能是最簡單的方法之一,以加快速度。另外,看起來他們也有一些關於付費的git眼鏡。 – DavidN

0

如果你是唯一一個開發這一回購:要在當地發展

  1. 克隆回購。 git clone http://repoURL

  2. 創建一個新的分支(本地)進行更改。 git checkout -b newBranchName

  3. 在本地對文件進行更改。

  4. 將文件添加到提交更改列表。 git add file1 file2 fileEtc

  5. 本地提交更改。 git commit -a -m"Message explaining changed files, which will show up as part of commit on github after pushing."

  6. 推送您在github上的回購更改。 git push origin newBranchName

  7. 現在你將在github上有一個新的分支,當你準備好時你可​​以與你的主分支合併。

注意:在提交之前,您可以運行git status以查看未跟蹤文件。您也可以輸入git branch以查看您的所有分支機構以及您當前正在使用的分支機構。

要刪除一個分支:(刪除的時候不能在該分支)git -d branchName

切換分支(預先存在的分支中):git checkout branchName