Git命令筆記

2021-08-07 02:00:22 字數 4173 閱讀 6268

常用配置:

#使用**,加速git clone,這裡的1081埠在ssr客戶端選項->本地**->本地埠可以設定

https.proxy=git pull/clone太慢的解決方法:

有時候要拉的檔案太大了就會很慢,甚至拉不下來,這時候可以試試下面這個方法:

git配置**

取消:git config --global --unset http.proxy

git config --global --unset https.proxy

本地工作區->git add->暫存區->git commit->版本庫(本地倉庫)->git push->遠端倉庫

//檢視日誌

git log --pretty=oneline  //只顯示一行

git reset --hard head^    //回退到上乙個版本

git reflog                //檢視命令歷史

git show                  //檢視最近一次更改內容

git show commitid         //log檢視某次commit更改的內容

git show --name-only      //檢視最近一次提交修改的檔案列表

git branch -d branch        //刪除分支

git push origin dev : dev        //將本地分支提交到遠端倉庫

git branch -r                    //檢視遠端分支

git push origin :dev             //刪除遠端分支

git push origin --delete dev  //刪除遠端分支

切換分支前,或者有緊急要需改的內容:

git stash                    //儲存當前更改到臨時的乙個棧

git stash lish               //顯示臨時棧中儲存過的更改

git stash pop stash@     //取回某次更改,快取沒了

本地**修改後但是沒有git add的,千萬不要git reset --hard,否則更改就丟了

不小心git add.了,檔案不想儲存到暫存區,但又要儲存本地工作區的修改:

git reset head file        //這樣檔案就恢復為 not staged(本地改動了,但沒有儲存到暫存區)

保證本地工作區.gitignore和遠端.gitignore不同,並且git不會檢查到工作區的修改:

git update-index --skip-worktree --

撤銷這種狀態:

git update-index --no-skip-worktree --

#不對0x80以上的字元進行quote,解決git status/commit時中文檔名亂碼

git config --global core.quotepath false

//想將dev分支合併到master分支,但是dev分支commit太多了,只想master分支更新一次commit資訊

將dev分支的多個commit合併成master分支乙個commit:

切換到master分支,

git merge --squash [dev]

比較兩個分支的不同:

git diff branch1 branch2            //顯示更改內容為:branch2相對應branch1的不同

git diff branch1 branch2 > 1.txt    //(覆蓋)將對比情況重定向到檔案

git diff branch1 branch2 >> 1.txt   //(追加)

比較兩個commit的不同:

git diff hash1 hash2 --stat    //顯示兩個commit檔案上的差異,新的commit建議放後面,可以看出新的commit相對舊的commit的改動

git diff hash1 hash2 file     //具體顯示某個檔案在兩個commit間的變化

git commit --amend

git修改某個專案的username:    (方便公司專案和個人專案是有不同的名字和郵箱)

git config user.name name

git config user.email email

git commit錯了到遠端分支:

git reset 到之前的分支,保持原來的分支不變,然後git push -f

這樣遠端分支會回退到舊的提交

git將已經存在的專案提交到github:

git remote add origin url

git push -u origin master

檢視本地倉庫裡所有檔案

git ls-files

.gitignore不忽略指定目錄:

必須像下面一樣遞迴忽略和取消忽略

最終的效果是/debug目錄下所有目錄和檔案都被忽略,除了/debug/android-build/assets目錄外

/debug/*                              //忽略/debug目錄下所有目錄和檔案

!/debug/android-build/                //不忽略/debug/android-build

/debug/android-build/*                //忽略/debug/android-build目錄下所有目錄和檔案

!/debug/android-build/assets         //不忽略/debug/android-build/assets

/debug/android-build/assets/tt/       //忽略該目錄

git忽略已經提交過的檔案:

git rm --cached 

git rm --cached -r

github fork倉庫一段時間後,如何同步源倉庫到自己的倉庫:

origin/master:個人遠端倉庫

upstream/master:源作者遠端倉庫

1. git remote add upstream(遠端倉庫名) 遠端倉庫url

2. git fetch upstream

3. git checkout master //切換到本地要合併的分支

4. git merge upstream/master //合併遠端倉庫master分支**到本地master分支

5. git push origin master //似乎預設是origin/master,直接git push就行了,不會push到upstream/master

git log顯示遠端倉庫commit:

git log --remotes

git log顯示修改過某個檔案的commit:

git log --follow 檔案

Git 命令筆記

設定使用者資訊 git config global user.name 名字 git config global user.email 郵箱位址 設定終端配色 git config global color.diff auto git config global color.status auto ...

git命令筆記

git init 初始化乙個git倉庫,使用git init命令 git add 新增大stage git commit m 提交到本地倉庫 git config global user.name your name git config global user.email email exampl...

Git命令筆記

碼雲建立倉庫並上傳 git 全域性設定 git config global user.name your name git config global user.email your email 建立 git 倉庫 git status 檢查狀態 git add git commit m first...