Git用戶簽名的修改取消及優(yōu)先級(jí)拓展教程
1、修改用戶簽名
其實(shí)很簡(jiǎn)單,就是重新執(zhí)行git config命令,換個(gè)用戶名和郵箱地址就可以了,新配置的內(nèi)容會(huì)覆蓋之前配置的內(nèi)容,達(dá)到了用戶簽名的修改。
以系統(tǒng)用戶為例:
# 查看系統(tǒng)級(jí)別的用戶配置 L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ git config --list --system diff.astextplain.textconv=astextplain filter.lfs.clean=git-lfs clean -- %f filter.lfs.smudge=git-lfs smudge -- %f filter.lfs.process=git-lfs filter-process filter.lfs.required=true http.sslbackend=openssl http.sslcainfo=F:/DevInstall/Git/GitforWindows/mingw64/ssl/certs/ca-bundle.crt core.autocrlf=true core.fscache=true core.symlinks=false credential.helper=manager user.name=tang_s # 這里是tang_s user.email=tang_s@126.com # 修改系統(tǒng)用戶配置 L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ git config --system user.name 'zhu_bj' # 查看系統(tǒng)級(jí)別的用戶配置 L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ git config --list --system diff.astextplain.textconv=astextplain filter.lfs.clean=git-lfs clean -- %f filter.lfs.smudge=git-lfs smudge -- %f filter.lfs.process=git-lfs filter-process filter.lfs.required=true http.sslbackend=openssl http.sslcainfo=F:/DevInstall/Git/GitforWindows/mingw64/ssl/certs/ca-bundle.crt core.autocrlf=true core.fscache=true core.symlinks=false credential.helper=manager user.name=zhu_bj # 這里是zhu_bj user.email=tang_s@126.com
提示:
- 系統(tǒng)級(jí)別的配置對(duì)應(yīng)的是所有操作系統(tǒng)的用戶,全局配置對(duì)應(yīng)的是單個(gè)系統(tǒng)用戶對(duì)所有Git倉(cāng)庫(kù)的配置,本地配置是對(duì)單個(gè)Git倉(cāng)庫(kù)的配置。
- 所以綜上所述,在一臺(tái)計(jì)算機(jī)中,系統(tǒng)用戶只能有一個(gè),全局用戶是每一個(gè)用戶可以設(shè)置一個(gè),本地用戶可以設(shè)置多個(gè)(一個(gè)本地版本庫(kù)對(duì)應(yīng)一個(gè))。
2、取消用戶簽名
語(yǔ)法:
git config --配置文件范圍 --unset user.name git config --配置文件范圍 --unset user.email
示例:取消系統(tǒng)用戶的用戶名和郵箱設(shè)置:
# 取消系統(tǒng)用戶的用戶名和郵箱設(shè)置 L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ git config --system --unset user.name L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ git config --system --unset user.email # 查看系統(tǒng)級(jí)別的用戶配置,可以看到?jīng)]有系統(tǒng)用戶的配置了。 L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ git config --list --system diff.astextplain.textconv=astextplain filter.lfs.clean=git-lfs clean -- %f filter.lfs.smudge=git-lfs smudge -- %f filter.lfs.process=git-lfs filter-process filter.lfs.required=true http.sslbackend=openssl http.sslcainfo=F:/DevInstall/Git/GitforWindows/mingw64/ssl/certs/ca-bundle.crt core.autocrlf=true core.fscache=true core.symlinks=false credential.helper=manager
提示:全局用戶同理,本地用戶需要到倉(cāng)庫(kù)中執(zhí)行命令,也是同理的。
3、用戶簽名的優(yōu)先級(jí)
之前我們講過(guò)執(zhí)行git config命令有三個(gè)作用域,分別是local、global、system。
接下來(lái),要探討的是,這三個(gè)配置作用域的優(yōu)先級(jí)。
(1)先查看本機(jī)Git用戶簽名配置
# 查看系統(tǒng)用戶簽名 L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ git config --list --system diff.astextplain.textconv=astextplain filter.lfs.clean=git-lfs clean -- %f filter.lfs.smudge=git-lfs smudge -- %f filter.lfs.process=git-lfs filter-process filter.lfs.required=true http.sslbackend=openssl http.sslcainfo=F:/DevInstall/Git/GitforWindows/mingw64/ssl/certs/ca-bundle.crt core.autocrlf=true core.fscache=true core.symlinks=false credential.helper=manager user.name=tang_s user.email=tang_s@126.com # 查看全局用戶簽名 L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ git config --list --global user.name=sun_wk user.email=sun_wk@126.com # 查看本地用戶簽名 L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ git config --list --local core.repositoryformatversion=0 core.filemode=false core.bare=false core.logallrefupdates=true core.symlinks=false core.ignorecase=true user.name=sha_hs user.email=sha_hs@126.com
可以看到:
- 系統(tǒng)用戶簽名:
tang_s - 全局用戶簽名:
sun_wk - 本地用戶簽名:
sha_hs
(2)創(chuàng)建一個(gè)文件,提交到本地版本庫(kù)中。
1)在倉(cāng)庫(kù)中創(chuàng)建一個(gè)文本。
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ touch test.java L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master) $ ll total 0 -rw-r--r-- 1 L 197121 0 4月 3 10:54 test.java
2)提交這個(gè)文本到本地Git倉(cāng)庫(kù)中。
# 1.查看工作目錄和暫存區(qū)中文件的狀態(tài),
# 發(fā)現(xiàn)工作區(qū)中有一個(gè)test.java未被git管理
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git status
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
test.java
nothing added to commit but untracked files present (use "git add" to track)
# 2.把test.java添加到暫存區(qū),被git納入管理
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git add test.java
# 3.再次查看工作目錄和暫存區(qū)中文件的狀態(tài),
# 可以看到test.java文件被git管理
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git status
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: test.java
# 4.把test.java提交到本地版本庫(kù)中
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git commit -m 'add test.java'
[master (root-commit) e85b3b2] add test.java
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 test.java說(shuō)明上邊的一些列操作:這里簡(jiǎn)單解釋一下,之后會(huì)詳細(xì)說(shuō)明。
使用Git的好處之一就是,如果出錯(cuò)了,它的提示信息是非常詳細(xì)的,認(rèn)真的耐心的看一看,就能夠解決。
執(zhí)行$ git status命令:用于顯示工作目錄和暫存區(qū)中文件的狀態(tài)。

文件是紅色的,意思是test.java文件還沒(méi)有被Git管控,這個(gè)時(shí)候直接使用git commit命令是不能生效的。
將文件加入Git的暫存區(qū)。
這時(shí)就要對(duì)新加入的文件執(zhí)行git add + 文件名,讓Git對(duì)該文件進(jìn)行管控,在看一下Git的狀態(tài)。

綠色表示該文件已經(jīng)被Git管理了,該文件已經(jīng)在Git的暫存區(qū)當(dāng)中了(stage)。
此時(shí)便可以對(duì)test.java文件生成一個(gè)正式的commit了。
執(zhí)行$ git commit -m 'add Test_text'
-m :就是說(shuō)你這此變更的理由或者原因是什么。

提示master分支根部的commit已經(jīng)創(chuàng)建出來(lái)了。
(3)查看Git日志。
執(zhí)行git log命令,查看Git日志。
L@DESKTOP-T2AI2SU MINGW64 /j/git-repository/learngit (master)
$ git log
commit e85b3b21a4b296acacf34bf9caeeaa75544a2f2b (HEAD -> master)
Author: sha_hs <sha_hs@126.com>
Date: Sat Apr 3 10:55:55 2021 +0800
add test.java我們可以看到,在system、global、local這三個(gè)用戶簽名都存在的情況下,是通過(guò)本地用戶進(jìn)行的提交,所以說(shuō)明本地用戶sha_hs的優(yōu)先級(jí)最高。
提示:
- 黃顏色的一串?dāng)?shù)字是本次
commit的id號(hào)。 Author表示完成這一次提交的作者。
(4)配置文件級(jí)別的優(yōu)先級(jí)總結(jié)。
- 就近原則:
項(xiàng)目(本地)級(jí)別優(yōu)先于用戶(全局)級(jí)別,用戶級(jí)別優(yōu)先于系統(tǒng)級(jí)別。
三者都有時(shí)采用項(xiàng)目級(jí)別的簽名。 - 如果只有用戶級(jí)別的簽名,就以用戶級(jí)別的簽名為準(zhǔn)。
- 三者都沒(méi)有簽名,不允許,無(wú)法提交變更到本地版本庫(kù)。
4、總結(jié)本文用到的Git命令
| 序號(hào) | Git命令 | 說(shuō)明 |
|---|---|---|
| 1 | $ git status | 查看當(dāng)前工作區(qū)和暫存區(qū)文件的狀態(tài) |
| 2 | $ git add | 可以將跟蹤到的更新放到暫存區(qū)(更新包括新增、修改、刪除等操作) |
| 3 | $ git commit -m 'add Test_text' | 提交更新 |
| 4 | $ git log | 查看提交歷史 |
注意:
執(zhí)行git status命令后,出現(xiàn)“Changed but not updated” t提示,說(shuō)明已跟蹤文件的內(nèi)容發(fā)生了變化,但還沒(méi)有放到暫存區(qū)。
以上就是Git用戶簽名的修改取消及優(yōu)先級(jí)拓展教程的詳細(xì)內(nèi)容,更多關(guān)于Git用戶簽名修改取消優(yōu)先級(jí)拓展的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
聯(lián)邦學(xué)習(xí)論文解讀分散數(shù)據(jù)的深層網(wǎng)絡(luò)通信
這篇文章主要為大家介紹了論文解讀分散數(shù)據(jù)的深層網(wǎng)絡(luò)通信有效學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
SVN與Git版本控制的優(yōu)缺點(diǎn)差異全面分析
這篇文章主要為大家介紹了SVN與Git版本控制的優(yōu)缺點(diǎn)差異全面分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04
使用數(shù)學(xué)軟件Matlab建模畫(huà)圖程序匯總
這篇文章主要介紹了使用數(shù)學(xué)軟件Matlab建模畫(huà)圖程序匯總,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2021-12-12
Studio 3T無(wú)限試用的問(wèn)題及解決方法
Studio 3T是一款非常不錯(cuò)的MongoDB數(shù)據(jù)庫(kù)GUI連接工具,由原MongoChef改名升級(jí),可以為大家更優(yōu)質(zhì)的網(wǎng)頁(yè)設(shè)計(jì)、代碼輸入、編程管理等功能,這篇文章給大家分享關(guān)于Studio3T試用時(shí)間到期的問(wèn)題,如何用腳本重新設(shè)置時(shí)間的失敗問(wèn)題,感興趣的朋友一起看看吧2022-08-08
Debezium 與 Apache Kafka 的集成方式步驟詳解
本文詳細(xì)介紹了如何將Debezium與Apache Kafka集成,包括集成概述、步驟、注意事項(xiàng)等,通過(guò)KafkaConnect,Debezium可以捕獲數(shù)據(jù)庫(kù)變更并實(shí)時(shí)發(fā)送到Kafka Topic,實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)同步和分析,感興趣的朋友一起看看吧2025-02-02
Elasticsearches通過(guò)坐標(biāo)位置實(shí)現(xiàn)對(duì)附近人的搜索
這篇文章主要為大家介紹了Elasticsearches使用坐標(biāo)位置實(shí)現(xiàn)對(duì)附近人的搜索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04
Win10下配置VScode遠(yuǎn)程開(kāi)發(fā)ssh-remote(免密登錄)
在開(kāi)發(fā)或者做實(shí)驗(yàn)的過(guò)程中,我們經(jīng)常會(huì)用到遠(yuǎn)程服務(wù)器或者Github的項(xiàng)目,本文詳細(xì)介紹的VScode配置免密ssh+remote,一旦連接成功,我們就可以在本地自己喜歡的IDE上操作遠(yuǎn)程服務(wù)器端的項(xiàng)目了2021-08-08

