git使用說明及問題集錦

2021-09-14 03:45:21 字數 3175 閱讀 7053

使用說明

git add

git add 是乙個多功能命名,根據目標檔案的狀態不同,此命令的效果也不同:可以用它開始跟蹤新檔案,或者把已經跟蹤的檔案放到暫存區,還能用於合併時把衝突的檔案標記為已解決狀態。

已經跟蹤的檔案修改後還是需要執行git add命令將修改的檔案放到暫存區的。

git commit -a

一般執行git commit之前要先執行git add,將修改的檔案加到暫存區,執行git commit -a 可以省去git add命令

git commit --amend

--amend 用於撤銷上一次的提交,重新提交替換上一次的提交,如果乙個乙個檔案忘了暫存了,導致沒有提交上去,可以先執行git add 然後再執行git commit --amend

git checkout -b '***x'

建立並檢出名為『***』的分支,等價於:

git branch '***'

git checkout '***x'

如果想在某個分支的基礎上建立分支,必須要先切換到該分支後再建立新的分支,例如在master分支的基礎上建立分支:

git checkout master 

git checkout -b '***'

git branch -d ***

刪除分支***,刪除分支的時候必須先退出分支,退出分支直接git checkout 到其他分支即可

git branch -d ***

強制刪除***分支,如果***分支尚未合併到別的分支,執行git branch -d ***,會失敗,如果要強制刪除可以執行該命令

git merge *** 

將***分支合併到當前分支,執行該命令前要先切換到要合併的分支,例如要把***分支合併到master分支:

git checkout master

git merge ***

git cherry-pick

將指定的某次提交合併到當前分支

git remote -v

檢視遠端url

git remote add *** remoteurl

新增遠端倉庫url

git remote add zhangzhanyang ssh:

git remote set-url 

修改遠端倉庫url

git remote set-url origin [email protected]:zhzhyang0313/photoweb.git

git reset --hard $commitid

將本地倉庫回退到某次提交$commitid為某次提交的id

git reset --soft 版本號

將本地倉庫回退到某次提交,並且保留本地修改的資訊

git push origin ***

將當前分支commit推送到遠端分支***

git push origin *** -f

強制將當前分支commit推送到遠端分支***

git push -f

強制推送到遠端倉庫,如果遠端倉庫版本較高會被覆蓋掉

git stash

將工作區中內容儲藏

git stash list

檢視儲藏區內容

git mv -f myfile myfile

修改檔名

git fetch origin

將遠端分支拉到本地

git checkout -b *** origin/***

用遠端分支***建立本地分支***

刪除遠端倉庫上多餘的檔案

git clone ***xaddress

git pull origin branchname

rm -rf ***file

git commit -m 'delete'

git push origin branchname

問題集錦

1、git中報unable to auto-detect email address 錯誤的解決辦法

提示** please tell me who you are.

rungit config --global user.email "[email protected]"

git config --global user.name "your name"

to set your account's default identity.

omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address (got 'tim@newton.(none)')

解決辦法

找到工程目錄的.git資料夾,開啟之後找到config檔案,在最後邊加上一句話

[user]

email=your email

name=your name

your email 和your name隨便寫上就行

或者git config --global user.email "[email protected]"

git config --global user.name "your name"

2、error: failed to push some refs to .....

原因沒有許可權

解決方法:

新增許可權或者新建乙個分支提交

3、使用git push沒有報錯,但是遠端倉庫沒有更新的問題

解決方法:

4、gitlab error: you need to resolve your current index first

此問題出現在git merge未成功然後切換分支的時候出的錯誤,

解決方法:git --reset merge

5、git diff old mode 100644 new mode 100755

切換到原始碼根目錄下執行

git config --add core.filemode false

6、git中怎樣實現忽略已經提交過的檔案和拉取後不提交配置檔案

把檔案加入不提交佇列:

git update-index --assume-unchanged 檔案
取消加入不提交佇列:

git update-index --no-assume-unchanged 檔案

git 使用說明

head代表當前 最新狀態。tag為某個狀態的標籤。sha1為每個提交日誌的唯一標識。install apt get install git core git clone git 倉 庫可以使用 git clone獲得 git clone git git longene.org unifiedker...

git使用說明

linus為linux kernel project發起的版本控制專案。head代表當前最新狀態。tag為某個狀態的標籤。sha1為每個提交日誌的唯一標識。install apt get install git core git clone git倉庫可以使用git clone獲得 git clon...

git使用說明

linus為linux kernel project發起的版本控制專案。head代表當前最新狀態。tag為某個狀態的標籤。sha1為每個提交日誌的唯一標識。install apt get install git core git clone git倉庫可以使用git clone獲得 git clon...