本工具是基於 @willh/git-setup 的開源專案,添加修改成符合個人的使用習慣。 主要功能為全自動設定 Git 版控環境,並且跨平台支援 Windows, Linux, macOS 等作業系統的命令列環境,尤其針對中文環境經常會出現亂碼的問題都會完整的解決。
npx @leoli0605/git-setup- 設定過程會詢問你的
user.name與user.email資訊- Email 會進行格式驗證,格式錯誤會拒絕設定下去
- 所有 Git 設定都會以
--global為主 (~/.gitconfig) - Windows 平台會自動設定
LC_ALL與LANG使用者環境變數- Linux, macOS 平台會提醒進行設定
Tip
可以使用下列指令快速清除已經存在的 Git 別名設定:
- Windows:
git config --global --get-regexp '^alias\.' | % { git config --global --unset ($_.Split(" ")[0]) } - Unix:
git config --global --get-regexp ^alias\. | cut -d ' ' -f1 | xargs -L1 git config --global --unset
git config --global user.name "${name}" git config --global user.email "${email}" git config --global core.editor "vim" git config --global core.autocrlf false git config --global core.quotepath false git config --global core.longpaths true git config --global svn.rmdir true git config --global init.defaultBranch main git config --global help.autocorrect 30 git config --global color.diff auto git config --global color.status auto git config --global color.branch auto git config --global pull.rebase true git config --global push.followTags true git config --global alias.list '!'"git --no-pager config --global --list" git config --global alias.co checkout git config --global alias.ss status git config --global alias.sss "status -s" git config --global alias.br branch git config --global alias.pf "push --force-with-lease" git config --global alias.ci "commit --allow-empty-message" git config --global alias.ca "commit --amend -C HEAD" git config --global alias.lo "log --oneline" git config --global alias.ls "log --show-signature" git config --global alias.ll "log --pretty='%C(Yellow)%h%x09%C(reset)(%ci) %C(Cyan)%an: %C(reset)%s' --date=short" git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset %ad |%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset [%Cgreen%an%Creset]' --abbrev-commit --date=short" git config --global alias.alias "config --get-regexp ^alias\." # 跨平台的 .gitignore 快速設定指令 git config --global alias.ignore '!'"gi() { curl -sL https://www.gitignore.io/api/\$@ ;}; gi" # 快速初始化 Git 庫並做第一次提交的指令 git config --global alias.iac '!'"giac() { git init -b main && git add . && git commit -m 'Initial commit' ;}; giac" # 快速清理工作目錄並復原已追蹤的檔案的指令 git config --global alias.cc '!'"gcc() { git checkout -- . && git clean -df ;}; gcc" # 快速新增標籤的指令 git config --global alias.tg '!'"gtg() { git tag -a \"\$1\" -m \"\$1\" ;}; gtg" # Windows 平台專用 TortoiseGit 日誌指令 git config --global alias.tlog "!start 'C:\\PROGRA~1\\TortoiseGit\\bin\\TortoiseGitProc.exe' /command:log /path:." # 快速使用 Commitizen 進行提交的指令,請先執行 `npm install -g commitizen` git config --global alias.cz '!'"npx cz" # 快速產生 CHANGELOG.md 檔案的指令,請先執行 `npm install -g conventional-changelog-cli` git config --global alias.changelog '!'"conventional-changelog -p angular -i CHANGELOG.md -s -r 0"如果您對本工具有任何想法,歡迎到這裡留言討論!
- LeoLiu
- 部落格:https://miscellaneous.im/blog/