git的基本使用

標簽(空格分隔): git


1. 獲取遠程倉庫的項目到本地

  • 使用 git clone 遠程倉庫地址 (如果使用 git clone 遠程倉庫地址 --depth=1 下載的是最新版本)

2. 配置本地郵箱和用戶名

打開Git Bash,輸入下面的命令,表示你這臺機器上所有的Git倉庫都會使用這個賬戶操作。

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

如果需要查看當前設置的用戶名和郵箱,分別執(zhí)行下面的操作

$ git config user.name
$ git config user.email

上面配置的每次都需要輸入用戶名和密碼,如果想記住用戶名和密碼
$ git config --global credential.helper store

3. 如果做了更改之后提交

如果不是最新版本 從線上拉取最新版本:git pull
切換到自己的分支git checkout <lvyweb>

  • 1、git status 查看狀態(tài)信息,顯示更新內(nèi)容
  • 2、git add --all或者git add .或者git add 文件名 添加文件。把當前文件放入暫存區(qū)域。
  • 3、git commit -m "第一次提交" 提交。給暫存區(qū)域生成快照并提交。
  • 4、git push origin lvyweb 推送到遠端
  • 5、如果覺得沒什么問題了,切到開發(fā)分支,合并到開發(fā)主分支 git merge <lvyweb>

注意:如果出現(xiàn)中文亂碼;使用git config --global 解決

4. 關于分支管理

  • 查看本地分支 git branch 會列出所有分支,當前分支前面會標一個*號。
  • 查看遠程分支:git branch -a
  • 切換到遠程分支:git checkout -t origin/cross-browser
  • 創(chuàng)建分支:git branch <name>
  • 切換分支:git checkout <name>
  • 創(chuàng)建+切換分支:git checkout -b <name>
    eg:git checkout -b v0.1b(版本號) origin/v0.1b(版本號)
  • 合并某分支到當前分支:git merge <name>
  • 刪除分支:git branch -d <name>
  • 刪除遠程分支: git push origin --delete <name>
  • 從develop分支把代碼同步到本地分支:git pull origin develop
  • git reset --hard origin/develop //使用指定分支的代碼(此處develop)強制覆蓋代碼
  • git branch --set-upstream-to=origin/遠程分支名稱 本地分支名稱 //建立遠程分支與本地分支的關聯(lián)關系

5. 恢復單個文件

如果不小心刪掉本地的某一個文件,需要重新下載一份。
步驟如下:

  • 使用git log查看一下歷史版本信息,記錄下需要恢復的commit版本號
    例如:10e3b2e992fbdd11f4387b6a4cf493e59dc1dc96
  • 恢復該文件:git reset commit_id 文件路徑
    git reset 10e3b2e992fbdd11f4387b6a4cf493e59dc1dc96 E:/project/learningcell-web/src/main/resources/templates/index.html
  • git checkout -- 文件路徑,例如:
    git checkout E:/project/learningcell-web/src/main/resources/templates/index.html

查看某個文件的修改歷史

  • 第一步,切換到要查看的文件的目錄
  • git log --pretty=oneline 文件名,例如:git log --pretty=oneline list.html
  • 每一行最前面的那一長串數(shù)字就是每次提交形成的哈希值,接下來使用git show即可顯示具體的某次的改動的修改~,例如:

git show 0bd199451415f43ac66c79a06780e269cbc786a9

6. git取消commit提交并且把提交文件返回工作區(qū)

一. 將commit撤銷,把文件返回暫存
git reset --soft HEAD^
二. 將暫存區(qū)文件返回到工作區(qū)
git reset HEAD


7. 解決沖突

情景一:如果需要下載線上版本,但是本地功能還沒有完善,可以先把本地功能保存在暫存區(qū),具體命令:

第一種方法:

git stash //保存在暫存區(qū),現(xiàn)在本地文件和服務器一樣

git pull //更新服務器上最新代碼

git stash pop //把暫存區(qū)的恢復

第二種方法:

 1、`git status` 查看狀態(tài)信息,顯示更新內(nèi)容
 2、`git add --all `或者`git add .`或者`git add 文件名` 添加文件。把當前文件放入暫存區(qū)域。
 3、`git commit -m "第一次提交"` 提交。給暫存區(qū)域生成快照并提交。
 4、`git pull` 一定不要忘記這一步
 5、`git push` 推送到遠端

當然,如果希望服務器完全覆蓋本地

git reset --hard //恢復最新版本
git pull

情景二:提交的時候發(fā)現(xiàn)和同事改了同一個文件的代碼,這個時候會報沖突。

先手動解決沖突,和同事商量保留哪部分
,然后,使用git commit -a -m "修改了什么",然后提交即可。

8. git切換鏡像

第一種(鏈接切換):

1.查看鏡像使用狀態(tài) npm get registry

  1. 全局切換鏡像: npm config set registry https://registry.npmmirror.com/

  2. 全局切換回官方源 npm config set registry http://www.npmjs.org

  3. 清空npm緩存 sudo npm cache clear --force

第二種(nrm切換)

1.利用npm 下載nrm:sudo npm install -g nrm

2.查看可切換的鏡像源: nrm ls

3.切換鏡像源(如淘寶):nrm use taobao

9. git--切換遠程倉庫

  1. 查看當前遠程倉庫地址 :git remote -v
  2. 修改遠程地址為新的地址 :git remote set-url origin <new url>//<new url> 改為新的地址
  3. 查看當前倉庫遠程地址 確認是否發(fā)生改變:git remote show origin
    切換后執(zhí)行 git status如果出現(xiàn)
Your branch and 'origin/test' have diverged, 
and have 6 and 7 different commits each, respectively. 
(use "git pull" to merge the remote branch into yours)

如果不需要保留本地的修改,只要執(zhí)行下面兩步:

git fetch origin
git reset --hard origin/test

當我們在本地提交到遠程倉庫的時候,如果遇到上述問題,我們可以首先使用如下命令:

git rebase origin/test
然后使用
git pull --rebase
最后使用
git push origin test
把內(nèi)容提交到遠程倉庫上

10. git--從具體某次提交拉出來一個分支

  1. New Tag新建標簽
  2. 填寫新分支名稱,Create from找到你要恢復的版本號填進去
    3.點擊Create tag,新的tag就出來了
  3. 從這個新的tag拉出來一個新的分支出來,再用這個分支合并到develop就完成了回退

11. 自己分支的更改不要了 只要自己分支代碼和develop保持一致

# 1. 確保獲取最新的 develop 代碼
git fetch origin develop

# 2. 切換到你的分支(如果當前不在該分支)
git checkout your-branch

# 3. 強制重置你的分支,使其與 develop 完全一致
git reset --hard origin/develop

# 4. 推送到遠程(如果遠程已有該分支,需強制推送)
git push --force-with-lease origin your-branch
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 1.git的安裝 1.1 在Windows上安裝Git msysgit是Windows版的Git,從https:/...
    落魂灬閱讀 12,850評論 4 54
  • 一. 掌握 - git 概述 1. git 簡介? 什么是git? > git是一款開源的分布式版本控制工具 > ...
    Louis_hey閱讀 553評論 1 3
  • 作為學校從小仙女走到老巫婆的我們,對別人而言,我們是對學校最熟悉的人,可對我們自己而言,我們是在學校最有壓力的人。...
    雨亦晨洛閱讀 158評論 0 0
  • 高中的時候,總是會憧憬大學生活,覺得到了大學,一切都會不一樣,不用再苦逼兮兮的學習,自己可以完美的游走在各種學生組...
    馬黑黑閱讀 679評論 11 1
  • 在山的這邊海的那邊有一群程序猿 他們老實又靦腆 他們聰明又有錢 一天到晚坐在那里認真的改bug 餓了就吃一口方便面...
    Amosvison閱讀 435評論 1 2

友情鏈接更多精彩內(nèi)容