偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

改變我使用 Git 工作方式的七個(gè)技巧

系統(tǒng)
Git 是目前最常見(jiàn)的版本控制系統(tǒng)之一,無(wú)論是私有系統(tǒng)還是公開(kāi)托管的網(wǎng)站,都在使用它進(jìn)行各種開(kāi)發(fā)工作。但無(wú)論我對(duì) Git 的使用有多熟練,似乎總有一些功能還沒(méi)有被發(fā)現(xiàn),下面是改變我使用 Git 工作方式的七個(gè)技巧。

[[355969]]

這些有用的技巧將改變你使用這個(gè)流行的版本控制系統(tǒng)的工作方式。

Git 是目前最常見(jiàn)的版本控制系統(tǒng)之一,無(wú)論是私有系統(tǒng)還是公開(kāi)托管的網(wǎng)站,都在使用它進(jìn)行各種開(kāi)發(fā)工作。但無(wú)論我對(duì) Git 的使用有多熟練,似乎總有一些功能還沒(méi)有被發(fā)現(xiàn),下面是改變我使用 Git 工作方式的七個(gè)技巧。

1、Git 中的自動(dòng)更正

我們有時(shí)都會(huì)打錯(cuò)字,但如果啟用了 Git 的自動(dòng)更正功能,就可以讓 Git 自動(dòng)修正打錯(cuò)的子命令。

假設(shè)你想用 git status 檢查狀態(tài),卻不小心輸入了 git stats。正常情況下,Git 會(huì)告訴你 stats 不是一條有效的命令:

  1. $ git stats
  2. git: stats is not a git command. See git --help’.
  3.  
  4. The most similar command is
  5. status

為了避免類(lèi)似的情況發(fā)生,請(qǐng)?jiān)?Git 配置中啟用 Git 自動(dòng)更正功能:

  1. $ git config --global help.autocorrect 1

如果你希望這個(gè)命令只適用于你當(dāng)前的版本庫(kù),請(qǐng)省略 --global 選項(xiàng)。

這條命令啟用了自動(dòng)更正功能。更深入的教程可以在 Git Docs 中找到,但嘗試一下和上面一樣的錯(cuò)誤命令,就能很好地了解這個(gè)配置的作用:

  1. $ git stats
  2. git: stats is not a git command. See git --help’.
  3. On branch master
  4. Your branch is up to date with origin/master’.
  5.  
  6. nothing to commit, working tree clean

Git 現(xiàn)在不會(huì)建議使用其他子命令,而是直接運(yùn)行最上面的建議,在本例中是 git status。

2、計(jì)算你的提交量

你需要計(jì)算提交數(shù)量可能有很多原因。例如,許多開(kāi)發(fā)者通過(guò)計(jì)算提交數(shù)量來(lái)判斷何時(shí)該增加構(gòu)建版本號(hào),或者只是想了解項(xiàng)目的進(jìn)展情況。

要計(jì)算提交數(shù)量其實(shí)很簡(jiǎn)單直接,下面是 Git 的命令:

  1. $ git rev-list --count branch-name

在上面的命令中,branch-name 應(yīng)該是當(dāng)前版本庫(kù)中有效的分支名稱(chēng):

  1. $ git rev-list count master
  2. 32
  3. $ git rev-list count dev
  4. 34

3、優(yōu)化你的倉(cāng)庫(kù)

你的代碼倉(cāng)庫(kù)不僅對(duì)你有價(jià)值,對(duì)你的組織也有價(jià)值。你可以通過(guò)一些簡(jiǎn)單的做法來(lái)保持你的版本庫(kù)的清潔和更新。其中一個(gè)最好的做法是 使用 .gitignore 文件。使用這個(gè)文件,就是告訴 Git 不要存儲(chǔ)許多不需要的文件,比如二進(jìn)制文件、臨時(shí)文件等等。

為了進(jìn)一步優(yōu)化你的版本庫(kù),你可以使用 Git 的垃圾收集功能:

  1. $ git gc --prune=now --aggressive

當(dāng)你或你的團(tuán)隊(duì)大量使用 pull 或 push 命令時(shí),這條命令就會(huì)起到幫助作用。

這個(gè)命令是一個(gè)內(nèi)部工具,可以清理倉(cāng)庫(kù)中無(wú)法訪問(wèn)或 “孤兒” Git 對(duì)象。

4、備份未被跟蹤的文件

大多數(shù)時(shí)候,刪除所有未被跟蹤的文件是安全的。不過(guò)很多時(shí)候,你不僅要?jiǎng)h除,還要為你的未跟蹤文件創(chuàng)建一個(gè)備份,以備以后需要。

通過(guò) Git 和一些 Bash 命令管道,可以很容易地為你的未被跟蹤的文件創(chuàng)建一個(gè)壓縮包:

  1. $ git ls-files --others --exclude-standard -z |\
  2. xargs -0 tar rvf ~/backup-untracked.zip

上面的命令制作了一個(gè)名為 backup-untracked.zip 的存檔(并排除了 .gitignore 中列出的文件)。

5、了解你的 .git 文件夾

每個(gè)版本庫(kù)都有一個(gè) .git 文件夾。它是一個(gè)特殊的隱藏文件夾。

  1. $ ls -a
  2. . .git

Git 的工作主要依賴(lài)于兩個(gè)部分:

  1. 工作樹(shù)(你當(dāng)前簽出的文件狀態(tài))。
  2. 你的 Git 倉(cāng)庫(kù)的路徑(即你的 .git 文件夾的位置,其中包含版本信息)。

這個(gè)文件夾存儲(chǔ)了所有的引用和其他重要的細(xì)節(jié),比如配置、倉(cāng)庫(kù)數(shù)據(jù)、HEAD 狀態(tài)、日志等等。

如果你刪除這個(gè)文件夾,你的源代碼的當(dāng)前狀態(tài)不會(huì)被刪除,但你的遠(yuǎn)程信息,如你的項(xiàng)目歷史記錄,會(huì)被刪除。刪除這個(gè)文件夾意味著你的項(xiàng)目(至少是本地副本)不再處于版本控制之下。這意味著你不能跟蹤你的變化;你不能從遠(yuǎn)程拉取或推送。

一般來(lái)說(shuō),不需要在 .git 文件夾里做什么,也沒(méi)有什么應(yīng)該做的。它是由 Git 管理的,基本上被認(rèn)為是個(gè)禁區(qū)。然而,這個(gè)目錄里有一些有趣的工件,包括 HEAD 的當(dāng)前狀態(tài)。

  1. $ cat .git/HEAD
  2. ref: refs/heads/master

它還可能包含對(duì)你的存儲(chǔ)庫(kù)的描述:

  1. $ cat .git/description

這是一個(gè)未命名的倉(cāng)庫(kù),編輯這個(gè) description 文件可以命名這個(gè)倉(cāng)庫(kù)。

Git 鉤子文件夾(hooks)也在這里,里面有一些鉤子示例文件。你可以閱讀這些示例來(lái)了解通過(guò) Git 鉤子可以實(shí)現(xiàn)什么,你也可以 閱讀 Seth Kenlon 的 Git 鉤子介紹

6、查看另一個(gè)分支的文件

有時(shí)你想查看另一個(gè)分支的文件的內(nèi)容。用一個(gè)簡(jiǎn)單的 Git 命令就可以實(shí)現(xiàn),而且不需要切換分支。

假設(shè)你有一個(gè)名為 README.md 的文件,它在 main 分支中,而你正在 dev 分支上工作。

使用下面的 Git 命令,你可以在終端上完成:

  1. $ git show main:README.md

一旦你執(zhí)行了這個(gè)命令,你就可以在你的終端上查看文件的內(nèi)容。

7、在 Git 中搜索

只需一個(gè)簡(jiǎn)單的命令,你就可以像專(zhuān)業(yè)人士一樣在 Git 中搜索。更棒的是,即使你不確定是在哪個(gè)提交或分支上做的修改,也可以在 Git 中搜索。

  1. $ git rev-list --all | xargs git grep -F 'string'

例如,假設(shè)你想在你的版本庫(kù)中搜索 font-size: 52 px; 這個(gè)字符串:

  1. $ git rev-list all | xargs git grep -F 'font-size: 52 px;'
  2. F30229e12:HtmlTemplate/style.css: font-size: 52 px;
  3. E92118244:RR.Web/Content/style/style.css: font-size: 52 px;

試試這些技巧

 

希望這些高級(jí)技巧對(duì)你有用,提高你的工作效率,為你節(jié)省很多時(shí)間。

 

責(zé)任編輯:龐桂玉 來(lái)源: Linux中國(guó)
相關(guān)推薦

2021-06-28 11:46:31

GitLinux

2022-09-25 22:56:52

JavaScrip編程技巧

2022-09-30 09:26:35

JavaScript技巧

2015-11-30 17:12:31

Git使用技巧

2021-11-22 12:13:54

Linuxwget 命令

2021-07-29 11:30:31

GitLinux命令

2023-03-20 15:34:00

ChatGPT人工智能

2024-03-27 14:51:23

2009-06-22 16:42:26

JSF的工作方式

2023-09-07 16:28:46

JavaScrip

2022-08-29 20:06:04

樓宇自控物聯(lián)網(wǎng)

2013-09-04 11:16:12

物聯(lián)網(wǎng)

2015-08-18 09:24:49

云技術(shù)工作應(yīng)用人工智能

2009-07-10 13:55:48

Swing控件

2009-09-28 13:39:01

Hibernate工作

2009-07-14 12:47:07

WebWork工作方式

2021-09-07 10:43:16

人工智能AI深度學(xué)習(xí)

2021-08-17 10:08:44

HTML網(wǎng)站網(wǎng)絡(luò)

2022-04-14 10:40:11

領(lǐng)導(dǎo)者IT團(tuán)隊(duì)遠(yuǎn)程團(tuán)隊(duì)

2024-06-25 15:41:41

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)