Git的基本使用,Github遠(yuǎn)程倉(cāng)庫(kù)的管理,obsidian Git插件的使用

不會(huì)用Git的開(kāi)發(fā)人員,絕對(duì)沒(méi)有真正的寫(xiě)過(guò)代碼

Git基本概念

Git 是一個(gè)分布式版本控制軟件.用來(lái)再軟件開(kāi)發(fā)時(shí),管理代碼的版本

第一次使用Git

第一次使用Git時(shí)候,需要配置好自己的用戶名和郵箱,這是在每一次提交的時(shí)候都要使用的信息.

# github或者gitlab用到的用戶名和郵箱
$ git config --global user.name "John Doe"
$ git config --global user.email "johndoe@example.com"

# 查看基本配置
git config --list

ssh連接和https連接.

ssh 連接和https連接的區(qū)別.

使用https連接,每次都要輸入用戶名和密碼,而且那個(gè)用戶名和密碼好像有點(diǎn)BUG,都得輸入兩次才能對(duì).很離譜

如何配置ssh連接github 賬戶

# 生成秘鑰
ssh-keygen -t rsa -C "johndoe@example.com"  # ~/.ssh目錄下面會(huì)有id_rsa和id_rsa.pub兩個(gè)文件

cat id_rsa.pub  # 把這個(gè)里面的內(nèi)容復(fù)制

復(fù)制上面的內(nèi)容之后,打開(kāi)你的github,進(jìn)入配置頁(yè):Settings – SSH and GPG keys花椭,添加本地生成的ssh秘鑰厂财,選擇New SSH key(這里已經(jīng)配置了一個(gè)key蹂季,如果是未配置秘鑰的用戶齐帚,這里是空的)庐冯,把復(fù)制的內(nèi)容貼過(guò)來(lái),然后保存:

#測(cè)試是否配置成功sfd

用ssh鏈接git:ssh -T git@github.com

Git的常規(guī)操作

# 克隆項(xiàng)目下來(lái)
git clone git@github.com:zhongqiangwu960812/AI-RecommenderSystem.git

# 如果新改了某個(gè)文件慧妄,需要同步到遠(yuǎn)程

# 如果是新增了某個(gè)文件顷牌,可以直接
git add 文件名    
git status  # 可以查看修改情況
git commit -m '新加文件'     # 提交說(shuō)明
git push    # 提交  

# 這樣,就搞定了

# 如果是刪除了某個(gè)或者修改了很多地方等塞淹,可以
git add .
git commit -m 'update many'
git push

#  如果是從遠(yuǎn)程倉(cāng)庫(kù)改了文件窟蓝,需要先拉到本地,讓本地和遠(yuǎn)程保持一致之后再push
git pull

分支

分支的概念

分支就是科幻電影里面的平行宇宙饱普,當(dāng)你正在電腦前努力學(xué)習(xí)Git的時(shí)候运挫,另一個(gè)你正在另一個(gè)平行宇宙里努力學(xué)習(xí)SVN。

如果兩個(gè)平行宇宙互不干擾套耕,那對(duì)現(xiàn)在的你也沒(méi)啥影響谁帕。不過(guò),在某個(gè)時(shí)間點(diǎn)冯袍,兩個(gè)平行宇宙合并了匈挖,結(jié)果,你既學(xué)會(huì)了Git又學(xué)會(huì)了SVN康愤!

Pasted image 20210809162103.png

分支的基本操作.

# 創(chuàng)建分支
git branch name //創(chuàng)建名為name的分支

#切換分支
git checkout name //這個(gè)是什么意思? 切換名字到為name的分支
# 上面兩行可以改成一行
git checkout -b name


#切換分支還可以用,建議用這個(gè),上面那個(gè)容易引起誤解
git switch -c dev  // 創(chuàng)建名為dev的分支,并切換到該分支
git switch dev      //切換到已有的dev分支.

# 修改完了代碼儡循,需要push到遠(yuǎn)程分支上,可以下面操作
git push --set-upstream origin 分支名

# 查看分支
git branch   # 本地分支
git branch -r   # 遠(yuǎn)程分支
git brance -a  # 查看所有分支

#合并分支
git merge dev //比如說(shuō)當(dāng)前所在分支為main,然后我使用這個(gè)命令,就會(huì)將dev和main合并到一起.

#刪除分支
git branch -d name #刪除分支,這個(gè)一般在當(dāng)前分支開(kāi)發(fā)完成,merge之后使用..




注意:在新建的分支上面做了更改之后,需要commit之后,才能看到兩個(gè)的區(qū)別,不然,就會(huì)發(fā)現(xiàn),兩個(gè)分支的東西是一樣的了.


也就是下面這個(gè)問(wèn)題.
[圖片上傳失敗...(image-a3f25a-1628507521785)]

操作遠(yuǎn)程庫(kù)的基本流程

假設(shè)什么也沒(méi)有,那就從第1步開(kāi)始最后.
假設(shè)已經(jīng)有了本地庫(kù),那就從第二步開(kāi)始.(不過(guò)好像還是得新建一個(gè).因?yàn)椴荒?和別的亂七八糟的庫(kù)關(guān)聯(lián)啊...)

1. 先在Github新建一個(gè)倉(cāng)庫(kù)

2. clone 下來(lái)之后,創(chuàng)建兩者之間的關(guān)聯(lián).

git remote add origin git@github.com:username/responame.git   //這里要使用ssh地址,而不是https地址了.因?yàn)槟闶褂昧藄sh連接.

如果發(fā)現(xiàn)關(guān)聯(lián)錯(cuò)誤,需要解除遠(yuǎn)程關(guān)聯(lián)

3. push到遠(yuǎn)程倉(cāng)庫(kù)

在本地的分支進(jìn)行了提交之后,就可以push到遠(yuǎn)程倉(cāng)庫(kù)了.

git push -u origin main //第一次push
git push origin main     //后面的push

附:解除和遠(yuǎn)程庫(kù)的關(guān)聯(lián)

如果添加的時(shí)候地址寫(xiě)錯(cuò)了征冷,或者就是想刪除遠(yuǎn)程庫(kù)择膝,可以用git remote rm <name>命令。使用前检激,建議先用git remote -v查看遠(yuǎn)程庫(kù)信息:

$ git remote -v
origin  git@github.com:michaelliao/learn-git.git (fetch)
origin  git@github.com:michaelliao/learn-git.git (push)

然后肴捉,根據(jù)名字刪除,比如刪除origin:

$ git remote rm origin

此處的“刪除”其實(shí)是解除了本地和遠(yuǎn)程的綁定關(guān)系呵扛,并不是物理上刪除了遠(yuǎn)程庫(kù)每庆。遠(yuǎn)程庫(kù)本身并沒(méi)有任何改動(dòng)。要真正刪除遠(yuǎn)程庫(kù)今穿,需要登錄到GitHub缤灵,在后臺(tái)頁(yè)面找到刪除按鈕再刪除。

obsidian 的Git插件

用處

obsidian 的Git插件,可以讓用戶使用Github來(lái)對(duì)自己的obsidian筆記庫(kù)進(jìn)行備份.

理解

obsidian 的git插件,實(shí)際上只是對(duì)系統(tǒng)的GIT做了一些調(diào)用而已.真正起作用的是系統(tǒng)的Git軟件.

因而,在使用obsidian-git插件之前,你需要先對(duì)vault做一些設(shè)置.比如把它初始化成Git 倉(cāng)庫(kù),添加遠(yuǎn)程倉(cāng)庫(kù)等等..

然后就可以使用obsidian的命令,來(lái)對(duì)其進(jìn)行pull push等一系列的git操作了.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末蓝晒,一起剝皮案震驚了整個(gè)濱河市腮出,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌芝薇,老刑警劉巖胚嘲,帶你破解...
    沈念sama閱讀 218,386評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異洛二,居然都是意外死亡馋劈,警方通過(guò)查閱死者的電腦和手機(jī)攻锰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)妓雾,“玉大人娶吞,你說(shuō)我怎么就攤上這事⌒狄觯” “怎么了妒蛇?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,704評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)楷拳。 經(jīng)常有香客問(wèn)我绣夺,道長(zhǎng),這世上最難降的妖魔是什么欢揖? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,702評(píng)論 1 294
  • 正文 為了忘掉前任陶耍,我火速辦了婚禮,結(jié)果婚禮上她混,老公的妹妹穿的比我還像新娘物臂。我一直安慰自己,他們只是感情好产上,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,716評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著蛾狗,像睡著了一般晋涣。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上沉桌,一...
    開(kāi)封第一講書(shū)人閱讀 51,573評(píng)論 1 305
  • 那天谢鹊,我揣著相機(jī)與錄音,去河邊找鬼留凭。 笑死佃扼,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蔼夜。 我是一名探鬼主播兼耀,決...
    沈念sama閱讀 40,314評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼求冷!你這毒婦竟也來(lái)了瘤运?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,230評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤匠题,失蹤者是張志新(化名)和其女友劉穎拯坟,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體韭山,經(jīng)...
    沈念sama閱讀 45,680評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡郁季,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,873評(píng)論 3 336
  • 正文 我和宋清朗相戀三年冷溃,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片梦裂。...
    茶點(diǎn)故事閱讀 39,991評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡似枕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出塞琼,到底是詐尸還是另有隱情菠净,我是刑警寧澤,帶...
    沈念sama閱讀 35,706評(píng)論 5 346
  • 正文 年R本政府宣布彪杉,位于F島的核電站毅往,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏派近。R本人自食惡果不足惜攀唯,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,329評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望渴丸。 院中可真熱鬧侯嘀,春花似錦、人聲如沸谱轨。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,910評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)土童。三九已至诗茎,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間献汗,已是汗流浹背敢订。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,038評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留罢吃,地道東北人楚午。 一個(gè)月前我還...
    沈念sama閱讀 48,158評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像尿招,于是被迫代替她去往敵國(guó)和親矾柜。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,941評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容