Git簡單教程
1、刪除已關(guān)聯(lián)的遠(yuǎn)程倉庫:
Gitremote rm <name>(遠(yuǎn)程倉庫的名字,自己命名的)
2、 關(guān)聯(lián)第一個(gè)遠(yuǎn)程倉庫:git remote add github git@github.com:youname/project.git
因?yàn)殛P(guān)聯(lián)的github所以起名github
3、 關(guān)聯(lián)第二個(gè)遠(yuǎn)程倉庫:git remote add gitee git@gitee.com:younmae/project.git
因?yàn)殛P(guān)聯(lián)的碼云所以起名gitee
4、 推送命令分為兩個(gè):
Git push github master; git push giteemaster
七、自定義Git
一、忽略特殊文件
在Git工作區(qū)的根目錄下創(chuàng)建一個(gè)特殊的“.gitignore” 文件,然后把要忽略的文件名填進(jìn)去,Git就會(huì)自動(dòng)忽略這些文件。
不需要從頭寫.gitignore文件,GitHub已經(jīng)為我們準(zhǔn)備了各種配置文件,只需要組合一下就可以使用了。所有配置文件可以直接在線瀏覽:https://github.com/github/gitignore
忽略文件的原則是:
1、忽略操作系統(tǒng)自動(dòng)生成的文件,比如縮略圖等;
2、忽略編譯生成的中間文件、可執(zhí)行文件等,也就是如果一個(gè)文件是通過另一個(gè)文件自動(dòng)生成的,那自動(dòng)生成的文件就沒必要放進(jìn)版本庫,比如Java編譯產(chǎn)生的.class文件;
3、忽略你自己的帶有敏感信息的配置文件,比如存放口令的配置文件。
例如python開發(fā):
# Windows:自動(dòng)生成的文件需要忽略
Thumbs.db
ehthumbs.db
Desktop.ini
# Python:python編譯時(shí)產(chǎn)生的文件需要忽略
*.py[cod]
*.so
*.egg
*.egg-info
dist
build
# My configurations:自己寫的定義的一些文件需要忽略
db.ini
deploy_key_rsa
最后提交Git
強(qiáng)制提交忽略的文件:git add –f filename
添加文件有問題,檢查忽略文件:git check-ignore -vfilename
二、Git 命令配置別名
--global參數(shù)是全局參數(shù),也就是這些命令在這臺(tái)電腦的所有Git倉庫下都有用
git config --global alias.st status ----> git status ---->git st
git config --global alias.co checkout ---->git checkout ---->git co
git config --global alias.ci commit ---->git commit ---->gitci
git config --global alias.br branch ---->gitbranch ---->git br
git config --global alias.unstage 'resetHEAD' ---->git reset HEAD file ---->git unstage file
git config –global alias.last 'log -1' ---->git log -1 ---->gitlast
甚至還有人喪心病狂地把lg
配置成了:
git config --global
alias.lg
"log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
來看看git lg
的效果:
配置文件:
配置Git的時(shí)候,加上--global
是針對(duì)當(dāng)前用戶起作用的,如果不加,那只針對(duì)當(dāng)前的倉庫起作用。
配置文件放哪了?每個(gè)倉庫的Git配置文件都放在.git/config
文件中:
$ cat .git/config
[core]
repositoryformatversion =
0
filemode =
true
bare =
false
logallrefupdates =
true
ignorecase =
true
precomposeunicode =
true
[remote
"origin"]
url = git
@github.
com:michaelliao/learngit.git
fetch = +refs/heads/*
:refs/remotes/origin/*
[branch
"master"]
remote = origin
merge = refs/heads/master
[
alias]
last = log -
1
別名就在[alias]
后面,要?jiǎng)h除別名,直接把對(duì)應(yīng)的行刪掉即可。
而當(dāng)前用戶的Git配置文件放在用戶主目錄下的一個(gè)隱藏文件.gitconfig
中:
$ cat .gitconfig
[
alias]
co = checkout
ci = commit
br = branch
st = status
[user]
name =
YourName
email = your
@email.com
配置別名也可以直接修改這個(gè)文件,如果改錯(cuò)了,可以刪掉文件重新通過命令配置。
三、搭建Git服務(wù)器
搭建Git服務(wù)器需要準(zhǔn)備一臺(tái)運(yùn)行Linux的機(jī)器,強(qiáng)烈推薦用Ubuntu或Debian,這樣,通過幾條簡單的apt命令就可以完成安裝。
假設(shè)你已經(jīng)有sudo權(quán)限的用戶賬號(hào),下面,正式開始安裝。
1、 安裝Git : sudo apt-get install git
2、 創(chuàng)建Git用戶,用來運(yùn)行Git服務(wù):sudo adduser git
3、 創(chuàng)建登錄證書:收集所有需要登錄的用戶的公鑰,就是他們自己的id_rsa.pub文件,把所有公鑰導(dǎo)入到/home/git/.ssh/authorized_keys文件里,一行一個(gè)。
4、 初始化Git倉庫:選定一個(gè)目錄:sudo git init --bare sample.git;Git就會(huì)創(chuàng)建一個(gè)裸倉庫,裸倉庫沒有工作區(qū),因?yàn)榉?wù)器上的Git倉庫純粹是為了共享,所以不讓用戶直接登錄到服務(wù)器上去改工作區(qū),并且服務(wù)器上的Git倉庫通常都以.git結(jié)尾。然后,把owner改為git:sudo chown -R git:git sample.git
5、 禁用shell登錄:
出于安全考慮,第二步創(chuàng)建的git用戶不允許登錄shell,這可以通過編輯/etc/passwd
文件完成。找到類似下面的一行:
git:x:1001:1001:,,,
:/home/git:/bin/bash
改為:
git:x:1001:1001:,,,
:/home/git:/usr/bin/git-shell
這樣,git
用戶可以正常通過ssh使用git,但無法登錄shell,因?yàn)槲覀優(yōu)?/span>git
用戶指定的git-shell
每次一登錄就自動(dòng)退出。
6、克隆遠(yuǎn)程倉庫:git clone git@server:/srv/sample.git

責(zé)任編輯:售電衡衡
-
權(quán)威發(fā)布 | 新能源汽車產(chǎn)業(yè)頂層設(shè)計(jì)落地:鼓勵(lì)“光儲(chǔ)充放”,有序推進(jìn)氫燃料供給體系建設(shè)
2020-11-03新能源,汽車,產(chǎn)業(yè),設(shè)計(jì) -
中國自主研制的“人造太陽”重力支撐設(shè)備正式啟運(yùn)
2020-09-14核聚變,ITER,核電 -
探索 | 既耗能又可供能的數(shù)據(jù)中心 打造融合型綜合能源系統(tǒng)
2020-06-16綜合能源服務(wù),新能源消納,能源互聯(lián)網(wǎng)
-
新基建助推 數(shù)據(jù)中心建設(shè)將迎爆發(fā)期
2020-06-16數(shù)據(jù)中心,能源互聯(lián)網(wǎng),電力新基建 -
泛在電力物聯(lián)網(wǎng)建設(shè)下看電網(wǎng)企業(yè)數(shù)據(jù)變現(xiàn)之路
2019-11-12泛在電力物聯(lián)網(wǎng) -
泛在電力物聯(lián)網(wǎng)建設(shè)典型實(shí)踐案例
2019-10-15泛在電力物聯(lián)網(wǎng)案例
-
新基建之充電樁“火”了 想進(jìn)這個(gè)行業(yè)要“心里有底”
2020-06-16充電樁,充電基礎(chǔ)設(shè)施,電力新基建 -
燃料電池汽車駛?cè)雽こ0傩占疫€要多久?
-
備戰(zhàn)全面電動(dòng)化 多部委及央企“定調(diào)”充電樁配套節(jié)奏
-
權(quán)威發(fā)布 | 新能源汽車產(chǎn)業(yè)頂層設(shè)計(jì)落地:鼓勵(lì)“光儲(chǔ)充放”,有序推進(jìn)氫燃料供給體系建設(shè)
2020-11-03新能源,汽車,產(chǎn)業(yè),設(shè)計(jì) -
中國自主研制的“人造太陽”重力支撐設(shè)備正式啟運(yùn)
2020-09-14核聚變,ITER,核電 -
能源革命和電改政策紅利將長期助力儲(chǔ)能行業(yè)發(fā)展
-
探索 | 既耗能又可供能的數(shù)據(jù)中心 打造融合型綜合能源系統(tǒng)
2020-06-16綜合能源服務(wù),新能源消納,能源互聯(lián)網(wǎng) -
5G新基建助力智能電網(wǎng)發(fā)展
2020-06-125G,智能電網(wǎng),配電網(wǎng) -
從智能電網(wǎng)到智能城市
-
山西省首座電力與通信共享電力鐵塔試點(diǎn)成功
-
中國電建公司公共資源交易服務(wù)平臺(tái)摘得電力創(chuàng)新大獎(jiǎng)
-
電力系統(tǒng)對(duì)UPS的技術(shù)要求