欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報(bào)激活碼778899分享:Git 筆記

柚子快報(bào)激活碼778899分享:Git 筆記

http://yzkb.51969.com/

Git 筆記

git 原理git 的四個(gè)區(qū)域文件的四種狀態(tài)git 的工作流程

安裝git配置信息和獲取幫助常用命令創(chuàng)建倉庫跟蹤文件 git add取消跟蹤 git rm提交到倉庫 git commit推送到遠(yuǎn)程分支 git pushcommit 的 查看、修改、合并版本回退搭建 git 服務(wù)器

git 原理

git 的四個(gè)區(qū)域

工作區(qū):平時(shí)存放項(xiàng)目代碼的地方暫存區(qū):用于臨時(shí)存放你的改動(dòng),事實(shí)上它只是一個(gè)文件,保存即將提交到文件列表信息本地倉庫:倉庫區(qū)(或版本庫),就是安全存放數(shù)據(jù)的位置,這里面有你提交到所有版本的數(shù)據(jù)。其中HEAD指向最新放入倉庫的版本遠(yuǎn)程倉庫:托管代碼的服務(wù)器,可以簡(jiǎn)單的認(rèn)為是你項(xiàng)目組中的一臺(tái)電腦用于遠(yuǎn)程數(shù)據(jù)交換

文件的四種狀態(tài)

Untracked: 未跟蹤, 此文件在文件夾中,但并沒有加入到git庫,不參與版本控制, 通過 git add 狀態(tài)變?yōu)镾taged。Unmodify: 文件已經(jīng)入庫且未修改, 即版本庫中的文件快照內(nèi)容與文件夾中完全一致,這種類型的文件有兩種去處,如果它被修改, 而變?yōu)镸odified,如果使用git rm移出版本庫, 則成為Untracked文件。Modified:文件已修改,僅僅是修改,并沒有進(jìn)行其他的操作,這個(gè)文件也有兩個(gè)去處,通過 git add 可進(jìn)入暫存 staged 狀態(tài),使用git checkout 則丟棄修改,返回到unmodify狀態(tài), 這個(gè)git checkout即從庫中取出文件,覆蓋當(dāng)前修改Staged:暫存狀態(tài),執(zhí)行g(shù)it commit則將修改同步到庫中,這時(shí)庫中的文件和本地文件又變?yōu)橐恢?,文件為Unmodify狀態(tài)。

git 的工作流程

在工作目錄中添加、修改文件;將需要進(jìn)行版本管理的文件 add 到暫存區(qū)域;將暫存區(qū)域的文件 commit 到 git 倉庫;本地的修改 push 到遠(yuǎn)程倉庫,如果失敗則執(zhí)行第5步(你千萬不要把公司代碼傳到GitHub上去?。。。ゞit pull 將遠(yuǎn)程倉庫的修改拉取到本地,如果有沖突需要修改沖突。回到第三步 因此,git 管理的文件有三種狀態(tài):已修改(modified),已暫存(staged),已提交(committed)

安裝git

linux 下:

sudo apt install git

驗(yàn)證安裝:

git --version

windows下: 在官網(wǎng)下載進(jìn)行安裝:GIt

配置信息和獲取幫助

設(shè)置用戶名稱與郵件地址,不加--global即在項(xiàng)目下使用特定的用戶

git config --global user.name "your name"

git config --global user.email "your email"

查看 git 的配置信息

git config --list

獲取幫助

git help

常用命令

創(chuàng)建倉庫

創(chuàng)建倉庫有兩種方法:

本地倉庫

mkdir proj && cd proj

git init

拉取遠(yuǎn)程倉庫

git clone url

跟蹤文件 git add

git add

// 比如跟蹤目錄下所有文件

git add .

// 跟蹤 .cpp 文件

git add *.cpp

取消跟蹤 git rm

git add 將文件添加到暫存區(qū),git rm 將文件從暫存區(qū)刪除(不再被 git 管理)

// 從暫存區(qū)刪除且將文件刪除

git rm -f

// 僅將文件從暫存區(qū)刪除

git rm --cached

提交到倉庫 git commit

git commit -a -m "修改了......"

優(yōu)雅的提交你的修改: message的格式:

():

type:

feat: 新特性fix: 修改問題refactor: 代碼重構(gòu)docs: 文檔修改style: 代碼格式修改, 注意不是 css 修改test: 測(cè)試用例修改chore: 其他修改, 比如構(gòu)建流程, 依賴管理.

scope:

commit 影響的范圍,即影響的模塊或者組件,比如: route, component, utils, build…

subject:

commit 的概述

body:

commit 具體修改內(nèi)容, 可以分為多行, 建議符合 50/72 formatting

footer:

一些備注, 通常是 BREAKING CHANGE 或修復(fù)的 bug 的鏈接,或者feature等等其余的信息.

推送到遠(yuǎn)程分支 git push

首先,你需要關(guān)聯(lián)遠(yuǎn)程倉庫,在此之前先生成 ssh key

// ssh-keygen [-t type] [-b bits] [-C comment] [-f output_keyfile] [-N new_passphrase] [-P passphrase]

ssh genkey -t rsa -b 2048 -C "youremail"

然后將密鑰填到 github 上。 查看分支:

git branch

// 修改 master 為 main

git branch -M main

關(guān)聯(lián)遠(yuǎn)程倉庫

// git remote add

git remote add origin url

// 查看關(guān)聯(lián)了哪些遠(yuǎn)程倉庫

git remote -v

推送 第一次推送時(shí)加上 -u [set-upstream]建立追蹤關(guān)系,后續(xù)不加分支名會(huì)自動(dòng)推送到這個(gè)分支。本地分支可以追蹤多個(gè)分支。 // git push :

git push -u origin main:main

沖突

沖突的產(chǎn)生:假設(shè)A和B共同維護(hù)一個(gè)項(xiàng)目,從同一個(gè)分支main開始工作。A克隆了倉庫到本地,并在readme.md文件的末尾添加了一行文字:“添加了新功能A”。然后提交更改并推送到GitHub上的main分支。B也在本地倉庫中對(duì)readme.md進(jìn)行了修改,在文件末尾添加了另一行:“修復(fù)了錯(cuò)誤B”。當(dāng)B嘗試推送更改到main分支時(shí),GitHub會(huì)阻止推送,因?yàn)锽的分支落后于遠(yuǎn)程的main分支(因?yàn)锳剛剛推送了更新)。解決:首先git pull,然后手動(dòng)解決沖突。

git config pull.rebase false # 合并(默認(rèn)策略)

git config pull.rebase true # 變基

git config pull.ff only

commit 的 查看、修改、合并

查看

git log

git log --oneline

// 顯示幾行

git log --[length]

// 跳過skip條,顯示length條

git log --skip=[skip] -[length]

git log -p

git log --stat

git shortlog

// 過濾

// data

git log --after="2000-10-1"

git log --before="2024-5-1"

// author

git log --author="ningao"

修改

// 覆蓋上一次修改id

git commit --amend

// 修改任意提交的message

git rebase -i id

合并

git rebase -i id

比較兩次commit之間的差異 首先使用 git log --oneline 查看歷史提交記錄 使用 git diff hash1 hash2 --stat 查看兩次提交之間的差異,這里因?yàn)榻◣鞎r(shí)沒有寫.gitignore文件,所以tracking 了 build 文件夾 使用 git diff hash1 hash2 filename查看某一個(gè)文件修改了那些地方

版本回退

尚未commit

// git-checkout - Switch branches or restore working tree files

git checkout branches/stable-1.1

git checkout a5673b8

git checkout a.cpp

已經(jīng)commit尚未push到remote倉庫

// git-reset - Reset current HEAD to the specified state

// --soft

// --mixed

// --hard

已經(jīng)提交到remote倉庫

搭建 git 服務(wù)器

柚子快報(bào)激活碼778899分享:Git 筆記

http://yzkb.51969.com/

好文鏈接

評(píng)論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。

轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://m.gantiao.com.cn/post/19312567.html

發(fā)布評(píng)論

您暫未設(shè)置收款碼

請(qǐng)?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問

文章目錄