簡體   English   中英

從現有的本地分支機構推送到新的在線存儲庫

[英]Pushing from existing local branch to new online repository

基本上,我們在在線存儲庫中擁有master testing-stage

我目前已連接到testing-stage並已用本地更新。 現在,測試階段已與master合並。

然后發生的是,已經在gitLab的網站上手動刪除了testing-stage然后創建了一個新的存儲庫,並將其命名為test ,它與如上所述完成合並的master相同。 現在,我進行了一些更改,並希望檢出並推送到test ,但是我當前的本地存儲庫正在偵聽先前的testing-stage ,該testing-stage現已被刪除。 我能做的最好的事情是什么?

鑒於我正確理解了您的問題...

運行git remote -v將允許您查看遠程URL。

您可以做的是刪除指向舊存儲庫的舊遠程URL:

git remote rm remote_name

我懷疑的名稱將是origin

然后,您可以添加一個指向新存儲庫的新遠程:

git remote add origin url_to_new_repository

您也可以只添加一個新的遠程URL而不必刪除舊的遠程URL,在這種情況下,您將有兩個不同的遠程URL。

我會這樣:

  1. 克隆test存儲庫以將其本地存儲
  2. testing-stagegit status查看修改后的文件
  3. 將所有這些修改后的文件復制/粘貼到test存儲庫的文件夾項目中
  4. 將修改推送到遠程test存儲庫

我建議從測試中挑選從當前分支到主分支的更改。 那是:

  • 更改遠程URL:

     git remote rename origin oldorigin git remote add origin $test_url 
  • 給您當前的分支重新命名:

     git checkout -b mybranch 
  • 切換到master分支並拉:

     git checkout master git pull -u origin master:master 

    現在,本地master分支應該與測試存儲庫中的master分支同步。

  • 挑選您的更改。 對於您的每個新提交:

     git log mybranch # find id of your commit git cherry-pick $commit_id 
  • 最后,推向測試大師

     git push 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM