如何把我們的原始碼同步到gitee或github遠程倉庫中
同步方式分以下幾種:
1、命令同步
- 先查看下我們是否有遠程倉庫:git remote -v
- 如有就要洗掉遠程倉庫或是同命令覆寫,如全新安裝就不需要!
- 洗掉已關聯的名為origin的遠程庫: git remote rm origin
- 關聯GitHub的遠程庫: git remote add github [email protected]:xxx/xxx.git
- 關聯Gitee的遠程庫: git remote add gitee [email protected]:xxx/xxx.git
2、配置修改
修改.git檔案夾內的config檔案:
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "git"] url = [email protected]:chloneda/demo.git fetch = +refs/heads/*:refs/remotes/github/* [branch "master"] remote = origin merge = refs/heads/master
將上述檔案內容[remote "origin"]內容復制,修改origin名稱
3、同步流程
上傳熱媒
git add . (將變更提交至快取區) git commit -m "提交說明(注釋)" - update可以輸入你需要上傳的描述
提交命令
# 提交到github
git push github master '- 將本地變更推送至遠程倉庫master分支'
#
提交到gitee
git push gitee master '- 將本地變更推送至遠程倉庫master分支'
查看狀態
git status
更放心代碼
# 從github拉取更新
git pull github
# 從gitee拉取更新
git pull gitee
專案推送時遇Git推送錯誤:
error: failed to push some refs to ‘[email protected]:name/project.git’
1、分析:
這個問題的產生是因為遠程倉庫與本地倉庫并不一致所造成,
2、解決方案:
那么我們把遠程庫同步到本地庫就可以了,
執行命令:
git pull --rebase origin master
將遠程倉庫中的更新合并到本地倉庫,–rebase的作用是取消掉本地倉庫中剛剛的commit
然而未果,出現錯誤:
- error: src refspec master does not match any
分析:引起該錯誤的原因是,目錄中沒有檔案,空目錄不能提交,
依次執行:
git pull origin master
git push origin master
踩到的坑
上述程序中,更新或提交代碼時可能會遇到fatal:refusing to merge unrelated histories (拒絕合并無關的歷史) 錯誤,解決辦法:
首先將遠程倉庫和本地倉庫關聯起來,
git branch --set-upstream-to=origin/remote_branch your_branch
其中,origin/remote_branch是你本地分支對應的遠程分支,your_branch是你當前的本地分支,
然后使用git pull整合遠程倉庫和本地倉庫,
git pull --allow-unrelated-histories (忽略版本不同造成的影響)
重新更新、提交即可,
注: 如遇到 Git沒有共同祖先的兩個分支合并 的情形請自行查詢!
報錯處理
git pull 的時候報如下錯誤代碼:
error: Pulling is not possible because you have unmerged files.
嘗試用git stash沒有作用,
Pull is not possible because you have unmerged files.
本地的push和merge會形成MERGE-HEAD(FETCH-HEAD), HEAD(PUSH-HEAD)這樣的參考,HEAD代表本地最近成功push后形成的參考,MERGE-HEAD表示成功pull后形成的參考,可以通過MERGE-HEAD或者HEAD來實作型別與svn revet的效果,
解決:
1.將本地的沖突檔案沖掉,不僅需要reset到MERGE-HEAD或者HEAD,還需要–hard,沒有后面的hard,不會沖掉本地作業區,只會沖掉stage區,
git reset –hard FETCH_HEAD
2.git pull就會成功,
如我們現在在dev分支上,剛開發完專案,執行了下列命令:
git add . git commit -m '提交的備注資訊' git push -u origin dev
想將dev分支合并到master分支,操作如下:
- 1、首先切換到master分支上
git checkout master
- 2、如果是多人開發的話 需要把遠程master上的代碼pull下來
git pull origin master //如果是自己一個開發就沒有必要了,為了保險期間還是pull
- 3、然后我們把dev分支的代碼合并到master上
git merge dev
- 4、然后查看狀態及執行提交命令
git status On branch master Your branch is ahead of 'origin/master' by 12 commits. (use "git push" to publish your local commits) nothing to commit, working tree clean
//上面的意思就是你有12個commit,需要push到遠程master上
> 最后執行下面提交命令
git push origin master
- 5其他命令
更新遠程分支串列 git remote update origin --prune 查看所有分支 git branch -a 洗掉遠程分支Chapater6 git push origin --delete Chapater6 洗掉本地分支 Chapater6 git branch -d Chapater6
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/202015.html
標籤:Html/Css
上一篇:車輛管理系統方案
