標簽(空格分隔): 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 developgit 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.htmlgit 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
全局切換鏡像:
npm config set registry https://registry.npmmirror.com/全局切換回官方源
npm config set registry http://www.npmjs.org清空npm緩存
sudo npm cache clear --force
第二種(nrm切換)
1.利用npm 下載nrm:sudo npm install -g nrm
2.查看可切換的鏡像源: nrm ls
3.切換鏡像源(如淘寶):nrm use taobao
9. git--切換遠程倉庫
- 查看當前遠程倉庫地址 :
git remote -v - 修改遠程地址為新的地址 :
git remote set-url origin <new url>//<new url> 改為新的地址 - 查看當前倉庫遠程地址 確認是否發(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--從具體某次提交拉出來一個分支
- New Tag新建標簽
- 填寫新分支名稱,Create from找到你要恢復的版本號填進去
3.點擊Create tag,新的tag就出來了 - 從這個新的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