Git命令操作指南(三)
Git 命令解析(續)
1. 修改遠端倉庫的url
git remote set-url origin <URL>
2. 增加遠端倉庫
git remote add origin <remote-url>
3. 列出所有遠端倉庫
git remote
4. 檢視兩個星期內的改動
git whatchanged --since='2 weeks ago'
5. 把A 分支的某一個commit ,放到B 分支上,這個過程需要 cherry-pick 命令:
git checkout <branch-name> && git cherry-pick <commit-id>
6. 給git 命令起別名,簡化命令
git config --global alias.<handle> <command>
比如:git status改成git st,這樣可以簡化命令
git config --global alias.st status
7. 儲存當前的修改,但不用提交commit
git stash
8. 儲存當前狀態,包括untracked 的檔案(untracked 檔案:新建的檔案)
git stash -u
9. 展示所有stashes
git stash list
10. 回到某個stash 的狀態
git stash apply <stash@{n}>
11. 回到最後一個stash 的狀態,並刪除這個stash
git stash pop
12. 刪除所有的stash
git stash clear
13. 從stash 中拿出某個檔案的修改
git checkout <stash@{n}> -- <file-path>
14. 展示所有tracked 的檔案
git ls-files -t
15. 展示所有untracked 的檔案
git ls-files --others
16. 展示所有忽略的檔案
git ls-files --others -i --exclude-standard
17. 強制刪除untracked 的檔案,可以用來刪除新建的檔案。如果不指定檔案檔名,則清空所有工作的untracked 檔案。
clean 命令,注意兩點:
clean 後,刪除的檔案無法找回
不會影響tracked的檔案的改動,只會刪除untracked的檔案
git clean <file-name> -f
18. 強制刪除untracked 的目錄,可以用來刪除新建的目錄,注意: 這個命令也可以用來刪除untracked 的檔案。詳情見上一條
git clean <directory-name> -df
19. 展示簡化的commit 歷史
git log --pretty=oneline --graph --decorate --all
20. 把某一個分支到匯出成一個檔案
git bundle create <file> <branch-name>
21. 從包中匯入分支
新建一個分支,分支內容就是上面 git bundle create 命令匯出的內容
git clone repo.bundle <repo-dir> -b <branch-name>
22. 執行rebase 之前自動stash
git rebase --autostash
23. 從遠端倉庫根據ID ,拉下某一狀態,到本地分支
git fetch origin pull/<id>/head:<branch-name>
24. 詳細展示一行中的修改
git diff --word-diff
25. 清除gitignore 檔案中記錄的檔案
git clean -X -f
26. 展示所有alias 和configs
注意: config 分為:當前目錄(local )和全域性(golbal )的config ,預設為當前目錄的config
git config --local --list(當前目錄)
git config --global --list(全域性)
27. 展示忽略的檔案
git status --ignored
28.commit 歷史中顯示Branch1 有的,但是Branch2 沒有commit
git log Branch1 ^Branch2
29. 在commit log 中顯示GPG 簽名
git log --show-signature