簡體   English   中英

如何在分叉的倉庫上強制推送主服務器

[英]How to force push master on a Forked Repo

我剛剛完成了一次面試的代碼挑戰。 這是我最初所做的:

  • 從他們的代碼挑戰倉庫中分叉
  • 克隆了我的分叉大師
  • 在克隆的主服務器上創建了一個新的本地分支
  • 過去一周對它做了很多承諾
  • 從我的功能分公司回饋給我的分叉大師

現在我已經完成,他們將對其進行審查。 我們的目標是在新的PR中顯示我所有工作的全部差異。 這是一個關於如何從他們那里進行建議的建議,但是我想確保我理解它以及如何做到這一點。

  • 確保您擁有代碼提交分支的本地和遠程副本,以確保安全
  • 然后強行將原版的干凈副本推送到您的倉庫中
  • 然后您的公開PR建議將您的代碼提交分支合並到您剛推送的主版本中

我不太確定要執行什么步驟。 我是否在本地簽出主人,然后強行推向主人? 該命令是什么樣的?

-然后強行將干凈的母版副本推送到您的回購協議中 ,他們在談論哪個母版,我的分叉的回購協議或我分叉的原始母版?

我有點迷路了。 我認為他們是在強迫原始主控(我從中派生的主控)覆蓋我的分叉主控,然后從我的分叉代碼提交分支到我的分叉存儲庫進行PR

我是否可以假設這是我需要做的事情?:

git checkout master (because I'm in my feature branch locally currently)
git reset --hard upstream/master  
git push origin master --force (which I assume is the same as this: `git push --force origin`?)

現在,單擊我的分叉存儲庫上的拉取請求按鈕,將左側更改為我的叉形主控,將右側更改為我的PR的功能分支

如果您已經完成了功能分支中的所有工作(如您所願),則無需強制執行任何操作,因為fork中的master分支與原始倉庫中的master分支是同一提交(驗證通過比較提交哈希值)。 如果是這種情況,只需打開功能分支(在您的分支中)到主節點(在您的分支中)的拉取請求即可。

編輯:沒關系,我讀得不好。

您確實需要強行推動。

如果知道要推送的哈希,則可以在一個命令中完成。 從github上公司回購的master分支中獲取該哈希。 然后:

git push -f origin <hash-goes-here>:master

在回購origin中,它將:原始主提交)左側的哈希推到右側的分支(您的主分支)。 請在此處查看此命令的完整文檔: https : //git-scm.com/docs/git-push

暫無
暫無

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

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