加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

第一本Git命令教程(1) - 準(zhǔn)備

2020/02/06
58
閱讀需 6 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

今天是 Git 系列課程第一課,痞子衡給大家要講的是創(chuàng)建倉庫的準(zhǔn)備工作。

1. 建倉庫 git init

第一步是創(chuàng)建一個(gè)空倉庫,這是一切操作的前提。

// 打開 git bash 命令行,切換到指定目錄下

jay@pc MINGW64 /

$ cd /d/my_project/

// 在指定目錄下創(chuàng)建存放 repo 的文件夾,示例為 gittest

jay@pc MINGW64 /d/my_project

$ mkdir gittest

// 切換到 gittest 目錄下

jay@pc MINGW64 /d/my_project

$ cd gittest/

// 使用 git init 命令創(chuàng)建一個(gè)空倉庫

jay@pc MINGW64 /d/my_project/gittest

$ git init

Initialized empty Git repository in D:/my_project/gittest/.git/
  

空倉庫創(chuàng)建完成后 gittest 文件夾下會(huì)生成一個(gè) .git 隱藏文件夾。倉庫默認(rèn)包含一個(gè)主支,即 master,默認(rèn)操作都是在主分支 master 上進(jìn)行的。

2. 配置倉庫信息 git config

有了空倉庫,我們便可以進(jìn)行后續(xù)提交操作,但在提交之后需要做一些必要配置,Git 的配置從上到下分三層 system/global/local,此處我們僅用 local 選項(xiàng)對(duì)當(dāng)前倉庫操作做配置(即配置只對(duì)當(dāng)前倉庫有效)。

// 設(shè)置提交代碼時(shí)的 local 用戶信息(用戶名,email 地址)

jay@pc MINGW64 /d/my_project/gittest (master)

$ git config --local user.name "Jay Heng"

jay@pc MINGW64 /d/my_project/gittest (master)

$ git config --local user.email "hengjie1989@foxmail.com"

// 查看 local 層次的 config 參數(shù)配置是否生效

jay@pc MINGW64 /d/my_project/gittest (master)

$ git config --local --list

core.repositoryformatversion=0

core.filemode=false

core.bare=false

core.logallrefupdates=true

core.symlinks=false

core.ignorecase=true

user.name=Jay Heng

user.email=hengjie1989@foxmail.com
  

設(shè)置好 user.name, user.email 兩個(gè)必要用戶信息后,后續(xù)任何提交都會(huì)默認(rèn)包含此用戶信息。

3. 設(shè)置過濾文件 .gitignore

有了倉庫,我們便可以在 gittest 文件夾下的工作區(qū)做文件增刪修改工作了,但很多時(shí)候,我們只在意開發(fā)過程中的源文件,并不需要管理自動(dòng)產(chǎn)生的其他臨時(shí)文件。這時(shí)候我們便需要一個(gè)過濾文件,在這個(gè)文件中設(shè)置過濾規(guī)則,讓 Git 能夠自動(dòng)過濾掉那些臨時(shí)文件,這個(gè)文件便是 .gitignore 文件。

// 創(chuàng)建空的 gitignore 文件

jay@pc MINGW64 /d/my_project/gittest (master)

$ touch .gitignore

// 文本編輯器打開 gitignore 文件,寫入過濾規(guī)則

/project/demo.o       #過濾具體文件 demo.o

/project/settings/    #過濾整個(gè) settings 文件夾

*.o                   #過濾所有 .o 文件
  

上面僅列舉了 3 種常用的過濾規(guī)則,可根據(jù)下面的過濾配置語法組合出任意你想要的過濾規(guī)則。

以斜杠“/”開頭表示目錄

以星號(hào)“*”通配多個(gè)字符

以問號(hào)“?”通配單個(gè)字符

以方括號(hào)“[]”包含單個(gè)字符的匹配列表

以嘆號(hào)“!”表示不忽略(跟蹤)匹配到的文件或目錄
  

如果希望設(shè)置的過濾規(guī)則不僅僅對(duì)本地倉庫的操作有效,也希望對(duì)其他機(jī)器上該倉庫的操作有效,可以 .gitignore 提交到倉庫中并且推送到遠(yuǎn)程,提交及推送操作后續(xù)會(huì)介紹。

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

碩士畢業(yè)于蘇州大學(xué)電子信息學(xué)院,目前就職于恩智浦(NXP)半導(dǎo)體MCU系統(tǒng)部門,擔(dān)任嵌入式系統(tǒng)應(yīng)用工程師。痞子衡會(huì)定期分享嵌入式相關(guān)文章