1. 公司內(nèi)部的gitlab上已經(jīng)放上了項目的模板碘饼,代碼完成后只需要push上來到同樣的目錄即可方便地使用dockerfile部署項目。
2. 由于本地之前是沒有初始化倉庫的,所以先git init
3. 然后git checkout -b dev
4. 其次,git remote add origin GitLabUrl
5. 為了防止pull覆蓋掉本地文件,我先 cp -r MC_creative template,然后 git add template/, git commit -am "push local creative project to remote dev".
commit可以保存本地文件狀態(tài)忍弛,避免文件覆蓋導(dǎo)致的丟失。
6. 然后git pull下來了線上的信息
7. 發(fā)現(xiàn)需要git merge origin/dev dev悟衩, 然后就報錯不允許合并無共同祖先的倉庫. 這時就需要加上 --allow-unrelated-histories .終于合并了線上和線下版本剧罩。
8. 現(xiàn)在git push沒問題了。
反思:一直在擔(dān)心merge的時候線上線下分支的順序是否有區(qū)別座泳,會否導(dǎo)致舊的內(nèi)容覆蓋了新的內(nèi)容。仔細想過后覺得不會幕与,如果有共同修改的內(nèi)容會報出沖突的挑势。所以命令中參數(shù)的順序是不要緊的。另外想到了合并時指定策略的用法啦鸣,以后會很有用的潮饱。
上述過程的曲折主要源自本地先commit了一次,處于擔(dān)心直接pull會不會導(dǎo)致本地修改丟失的考慮诫给。仔細想想香拉,應(yīng)該是不會的啦扬。以后可以git pull,自動執(zhí)行合并吧凫碌,哪怕你沒有commit也沒問題吧扑毡,這樣再次commit和push就不會有問題了。