2011-09-20 108 views
1

我是新來的git,並從SVN調整我的工作流程。我遇到的最大問題是,如果我想向項目維護人員控制的主資料庫進行拉取請求,我有所有這些我不想要的提交。如何檢查沒有提交的git倉庫跟着我

這裏是我一直在服用

git checkout develop 
git fetch upstream 
git merge upstream/develop 

修改文件

git add /file 
git commit file -m "some commit" 
git push origin develop 

然後在GitHub上使拉入請求的步驟。現在,當我提出拉取請求而不是說1提交1個文件時,它像24個提交,並且具有來自上游的所有其他人的提交。我需要在我的工作流程中添加或刪除哪些附加步驟,以便我只需提交我需要的一個文件的拉取請求。

+0

你可以試試'git pull'嗎? –

回答

0

試試這個流程來代替:

  1. git fetch upstream
  2. git checkout -b new_branch upstream/develop(創建一個新的分支,讓你在上面)
  3. 修改要更改文件。
  4. git add <files>
  5. git commit -m "some message"
  6. git push origin new_branch

而且,是上游的主分支的分支develop?通常主分支名爲master。如果您將更改從主分支以外的分支轉移出來,那麼pull請求可能會顯示其他分支但不是主分支的任何提交。

+0

上游有兩個分支開發並掌握 – BillPull

+1

好的,那可能是您的問題 - 默認情況下,pull請求會與'master'進行比較,而不是另一個分支。因此,由於'develop'可能比'master'早於相當數量的提交,所以這些提交會作爲pull請求的一部分顯示出來(因爲通過將您的更改放在'develop'中,您實際上會要求提交這些提交在你之前出席)。 – Amber

+0

遵循您提供的完美工作步驟我將我的pull請求發送到上游/ develop – BillPull