git使用簡記

2022-09-12 01:39:15 字數 2701 閱讀 3994

git是分布式的**版本控制工具,當年linus為了管理好linux核心**搞出來的東西。雖一直聽說git合併**很方便,但卻沒怎麼用過,公司一直還在用svn來管理**。

最近註冊了個github賬號,用來看原始碼,當然自己也要寫一點,這裡順便把一些最基礎的git命令記下來。

1. 建立本地版本庫

建立新的**庫:git init  

轉殖現有**庫:git clone  

set up git設定提交的使用者名稱和郵箱

git config --global user.name "snailding"

git config --global user.email [email protected]

如果不設定個人資訊,提交的資訊將不會有更改者資訊,這樣會加大專案管理的難度。

2.修改專案檔案

git add                //將檔案新增到暫存區

git status             //檢視當前工作目錄狀態

git rm                  //從暫存區刪除檔案

git commit -m "" //提交檔案到本地**庫: 

git diff                //檢視當前工作檔案與暫存區檔案的差異

若要看已經暫存起來的檔案和上次提交時的快照之間的差異,可以用 git diff --cached 命令

git commit -a -m 'added new benchmarks'  //暫存並同時提交到本地庫

3. 建立金鑰資訊並在github上配置

ssh-keygen -t rsa -c "[email protected]"      //生成金鑰對

enter passphrase (empty for no passphrase): [type a passphrase]  //輸入密碼(這個密碼會在你提交專案時使用):

ssh-agent -s  //配置ssh使用公私鑰

將生成的公鑰新增到github的管理後台中

4.提交**到版本庫

git remote add origin [email protected]:defnngj/demo.git

//如果你是第一次提交專案,這一句非常重要,這是你本地的當前的專案與遠端的哪個倉庫建立連線。

//origin可以改為別人的名字,但是在你下一次push(提交)時,也要用你修改之後的名字。

git remote -v                        //檢視你當前專案遠端連線的是哪個倉庫位址

git push -u origin master     // 將本地的專案提交到遠端倉庫中

git push origin master         //push到遠端中的同名專案中

git pull origin master          //遠端**庫上的**更新到本地:

如果需要忽略某些檔案,建立乙個名為 .gitignore 並寫入相應規則

5.分支的新建與合併

git checkout -b iss53          //新建並切換到該分支,即當前的 head 指標正指向 iss53

相當於執行了:

git branch iss53

git checkout iss53

git checkout master             //切換分支,切換到主分支

git checkout master               //切回主分支,合併hotfix分支

git merge hotfix

git branch -d hotfix          //刪除hotfix分支

git checkout master          //合併分支

git merge iss53

git status                //看看哪些檔案在合併時發生衝突,可以用git status查閱:

任何包含未解決衝突的檔案都會以未合併(unmerged)的狀態列出

6.其他常見問題

提交**是遇到衝突,拒絕提交

git pull remotetest master  //抓取遠端倉庫中的檔案,需要指定分支 

檢視衝突檔案內容,衝突用<<<<<< *****= >>>>>>隔開衝突**,上面的是當前修改內容,下面的則是別人修改的內容。

git add 修改衝突內容,重新提交,推送

假如本地已經存在了這個專案,而倉庫中又有一新的更新,如何把更的合併到本地的專案中?

git fetch origin               //取得遠端更新,這裡可以看做是準備要取了

git merge origin/master  //把更新的內容合併到本地分支/master

git 都會嘗試去自動合併改動,但可能會產生衝突(conflicts)需要手動合併

git diff 檢視不同版本的不同

git log      //檢視提交歷史 -p顯示內容不同  -3指定顯示的個數

git config --global core.autocrlf true   //windows提交檔案時自動設定換行轉換 

參考:github使用git更新:

git用法: 

Git使用簡記

匯出檔案 git 標籤 新增標籤 git tag,例 git tag v1.0 新增帶有說明的標籤 git tag a v0.1 m 第一次提交 a指定標籤名,m指定說明文字 檢視標籤 git tag 為歷史提交打標籤 先檢視歷史提交的 commit idgit log pretty oneline...

git使用簡記 git分支使用

最近使用到git託管專案,記錄一下常用到git命令。這篇文章是專注記錄git分支部分常用的命令。1 檢視本地分支 git branch2 檢視遠端分支 git branch a3 檢視當前所在分支 git branch跟檢視本地分支的命令是一樣的,結果前面有 號的就是當前分支 4 切換到指定分支 如...

Git手冊簡記

在git介面中的幫助選項 在當前目錄下新建空倉庫git init。新增全部檔案 git add a 新增某個檔案 git add 檔名 新增某類檔案 git add cpp 新增.cpp型別的檔案 注意 暫存和提交有區別 將更改更新到倉庫 git commit m 附加備註 提交後就完成了本地倉庫的...