【八】自定义Git
自定義Git
- 忽略特殊文件
- 配置別名
- 配置文件
- 搭建Git服務器
忽略特殊文件
有些時候,你必須把某些文件放到Git工作目錄中,但又不能提交它們,比如保存了數據庫密碼的配置文件啦,使用node的項目會有個node_modules目錄等等,每次git status都會顯示Untracked files …,有強迫癥的童鞋心里肯定不爽。
好在Git考慮到了大家的感受,這個問題解決起來也很簡單,在Git工作區的根目錄下創建一個特殊的.gitignore文件,然后把要忽略的文件名填進去,Git就會自動忽略這些文件。
不需要從頭寫.gitignore文件,GitHub已經為我們準備了各種配置文件,只需要組合一下就可以使用了。所有配置文件可以直接在線瀏覽:https://github.com/github/gitignore
忽略文件的原則是:
- 忽略操作系統自動生成的文件,比如縮略圖等;
- 忽略編譯生成的中間文件、可執行文件等,也就是如果一個文件是通過另一個文件自動生成的,那自動生成的文件就沒必要放進版本庫,比如Java編譯產生的.class文件;
- 忽略你自己的帶有敏感信息的配置文件,比如存放口令的配置文件。
寫好.gitignore后記得把.gitignore也提交到Git,就完成了!
有些時候,你想添加一個文件到Git,但發現添加不了,原因可能是這個文件被.gitignore忽略了
如果你確實想添加該文件,可以用-f強制添加到Git:
git add -f App.class.gitignore編寫規則:
# 排除所有.開頭的隱藏文件: .* # 排除所有.class文件: *.class# 不排除.gitignore和App.class: !.gitignore !App.class配置別名
如果嫌git命令太長或不好記,可以設置簡單的別名,比如用st表示status:
git config --global alias.st status以后git status就可以直接寫成git st,是不是很方便呢。
配置文件
配置Git的時候,加上--global是針對當前用戶起作用的,如果不加,那只針對當前的倉庫起作用。
配置文件放哪了?每個倉庫的Git配置文件都放在.git/config文件中:
而當前用戶的Git配置文件放在用戶主目錄下的一個隱藏文件.gitconfig中(所以電腦重置后一般這個文件就沒有了,需要重新配置):
[user]email = 1511455676@qq.comname = zy1281539626搭建Git服務器
如果你不想使用第三方的服務器GitHub/Gitee之類的版本管理平臺,想自己搭建一個Git服務器作為私有的倉庫使用也是可以的。
搭建Git服務器需要準備一臺運行Linux的機器,強烈推薦用Ubuntu或Debian,這樣,通過幾條簡單的apt命令就可以完成安裝。
假設你已經有sudo權限的用戶賬號,下面,正式開始安裝。
第一步,安裝git:
第二步,創建一個git用戶,用來運行git服務:
sudo adduser git第三步,創建證書登錄:
收集所有需要登錄的用戶的公鑰,就是他們自己的id_rsa.pub文件,把所有公鑰導入到/home/git/.ssh/authorized_keys文件里,一行一個。
第四步,初始化Git倉庫:
先選定一個目錄作為Git倉庫,假定是/srv/sample.git,在/srv目錄下輸入命令:
Git就會創建一個裸倉庫,裸倉庫沒有工作區,因為服務器上的Git倉庫純粹是為了共享,所以不讓用戶直接登錄到服務器上去改工作區,并且服務器上的Git倉庫通常都以.git結尾。然后,把owner改為git:
sudo chown -R git:git sample.git第五步,禁用shell登錄:
出于安全考慮,第二步創建的git用戶不允許登錄shell,這可以通過編輯/etc/passwd文件完成。找到類似下面的一行:
改為:
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell這樣,git用戶可以正常通過ssh使用git,但無法登錄shell,因為我們為git用戶指定的git-shell每次一登錄就自動退出。
第六步,克隆遠程倉庫:
現在,可以通過git clone命令克隆遠程倉庫了,在各自的電腦上運行:
如果需要做權限管理,可以使用Gitosis
總結
- 上一篇: 14怎么敷铜不了_YEO护肤课堂:敷面膜
- 下一篇: java计算信息熵_熵的计算