git常用命令及手動關聯git本地和遠端倉庫

SilentLove發表於2018-11-08

1、應用場景

  • 通常情況下,我們一般都是現在git遠端倉庫建立專案,然後直接git clone 倉庫地址直接本地,這時候就會自動關聯本地倉庫和遠端倉庫。
  • 當有時候我們需要手動的把原生程式碼提交到遠端,關聯到遠端的倉庫。

2、關聯git本地和遠端倉庫步驟

  1. 開啟git,輸入mkdir newProject 新建一個資料夾。
  2. git init 初始化本地資料夾為一個可以管理的git倉庫。
  3. 關聯本地倉庫和遠端倉庫:git remote add origin http://${path}.git.
  4. 把檔案放入本地倉庫
    • git status          // 列出沒有被git管理或者修改但還沒有未被提交的檔案
    • git add .          // 將未被管理的檔案新增到git
    • git commit -am "提交檔案"
  5. 把本地庫推送到遠端倉庫
    • git push -u origin master
    • ps:當遠端倉庫使用Readme檔案初始化專案,需要先git pull origin master,有固定格式時需手動編輯,按i修改,:wq退出
  6. 切換本地開發分支並管理遠端分支
    • git checkout -b topic      // 建立並切換到topic新分支,相當於git branch topic 和git checkout topic 組合
    • git push origin topic:topic      // 關聯本地topic分支和遠端topic分支 (沒有將自動建立topic分支並關聯)

3、git 常用命令

  • 開發四部曲。
    1. git add .
    2. git commit -a "commit" / git commit -am "commit"
    3. git pull origin master
    4. git push origin master
  • 程式碼衝突。
    1. 解決衝突
    2. git add .
    3. git rebase --continue (或者再次git commit)
    4. git push origin master
  • git 分支管理
    • git fetch (-p)               // branch在伺服器上的最新狀態
    • git branch (-a)                // 檢視所有branch
    • git branch newBranch    // 本地建立branch
    • git checkout branch        // 切換branch
    • git checkout -b topic      // 建立並切換到topic新分支
    • git push origin topic:topic      // 關聯本地topic分支和遠端topic分支
    • git branch --set-upstream-to=origin/topic topic      //設定本地topic的上游及遠端分支(設定之後git pull將預設從遠端topic分支可拉取程式碼,git push將預設推送程式碼到遠端topic分支)
    • ......
  • git版本管理
    1. git reset --hard HEAD^          // 回退上一個版本
    2. git reset --hard HEAD~3          // 回退上三個版本
    3. git reset --hard 版本號          // 回退指定版本
  • git遠端版本回退
    1. git checkout target_branch            // 切換到需要回滾的分支
    2. git pull                                             //更新程式碼
    3. git branch target_branch_copy         //備份一下這個分支當前的情況
    4. git reset --hard target_commit_id    //把target_branch本地回滾到target_commit_id
    5. git push origin :target_branch          //刪除遠端 target_branch
    6. git push origin target_branch         //用回滾後的本地分支重新建立遠端分支
    7. git push origin :target_branch_copy      //如果前面都成功了,刪除這個備份分支
  • git 大小寫不敏感問題
    • 修改配置項
      1. 專案根目錄下,ll -a
      2. cd .git/ 進入.git/檔案下,ll -a
      3. 修改config配置檔案 vim config
      4. ignorecase = false
      5. :wq退出儲存
        ps: 或者直接通過命令:git config core.ignorecase false
      6. 修改檔名,提交。
      • ps:多人協作時不建議使用,大小寫不統一時更新會報錯。建議提交後再把配置項修改為true。
    • 重新命名
      1. git mv oldName newName
      2. git status
      3. 可以看到rename的提示,此時正常提交即可。

4、 其它

  1. git的命令遠不止於此,本文只是類舉出使用git的常用場景及命令。
  2. 如有疑問和錯誤歡迎提出和指正。

相關文章