# Gitlab merge request 教學  首先每個project 會有一個共同管理的遠端repo,我們常稱作Upstream。 會從這個upstream fork出個人的遠端repo,基本上改動都會是做在個人本端repo以及個人遠端repo上,當有需要其他人來一起協作或討論時可以開放個人遠端repo的權限。 ### fork  點擊畫面Fork可以複製一份自己的repo ### remote repo範例  可以透過```$git remote add [remote-name] [url]```這個指令來新增遠端的repo目標位置。 <u>[remote-name]可以依據個人習慣來自己定義,通常upstream會定義為最原始repo,通常origin或個人名稱會當作個人管理repo</u> ```console $git remote add upstream git@192.168.3.4:decoder/Mega/libdecoder.git $git remote add howard git@192.168.3.4:howardhsien/libdecoder.git ``` 若想要將upstream程式碼載下來,可以下fetch指令```$git fetch [remote-name]``` ```console $git fetch upstream ``` 很重要的一點是:git fetch 命令只會下載資料到你的版本庫——它並不會自動合併你的任何工作內容,也不會自動修改你正在修改的東西; 當你準備好合併你的工作內容時,你必需用手動的方式進行合併。 若想要將其他人repo程式碼載下來,可以下以下指令(需要先確認是否有他人repo的權限) ```console $git fetch paul $git fetch tamino $git fetch james $git fetch howard ``` 當載下程式碼後可以透過checkout/merge等指令```$git merge [remote-name] [branch-name] ``` ```$git checkout [remote-name] [branch-name] ```來同步或測試他人程式碼 ```console $git checkout howard/develop $git merge upstream/master ```  ### 權限設定  點選 => Setting -> Members  選擇inviting members => 選擇Developer (可以依據欲開放的權限調整) 當大家有共識,或是希望可以合併回共同遠端repo時,可以發送merge request,等待共有repo的負責人進行merge的動作。 ### merge request   選擇想要申請合併的branch並發送申請,負責人此時會收到email以及gitlab上面會出現有merge request待處理的通知。 Referenece: https://git-scm.com/book/zh-tw/v2/Git-%E5%9F%BA%E7%A4%8E-%E8%88%87%E9%81%A0%E7%AB%AF%E5%8D%94%E5%90%8C%E5%B7%A5%E4%BD%9C
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up