安裝過程注意事項
1、設定唯一標識
git config –global user.name 「你的名字」
git config –global user.email 「你的郵箱」
git config –global gui.encoding utf-8 設定預設字符集
git config –global core.quotepath off 防止中文路徑亂碼
git config –global core.ignorecase flase
2、建立本地倉庫(本地資料夾)
mkdir 檔名
pwd命令用於顯示當前目錄
3、初始化git倉庫
git init
使用過程中的注意事項
一、理解工作區、暫存區和倉庫的概念
1、git add 《檔名》
相當於將工作區的檔案新增到暫存區
2、git commit -m 「描述內容」
相當於將檔案提交到倉庫並且新增了本次的提交描述
3、git status
用於檢視倉庫的當前狀態
4、git diff head –檔名
用於檢視修改檔案的不同(和上一次比較)
5、git log
用於顯示最近到最遠的提交日誌
6、git log –pretty=oneline
將日誌按一行顯示
7、git log –pretty=oneline –abbrev-commit 將id號簡寫顯示
1、git reset –hard head^
表示回滾到上一版本。該命令既可以回退版本,也可以把暫存區的修改回退到工作區
2、git reflog
表示檢視每一次命令
3、git checkout –檔名
表示讓檔案回到最近一次git add或git commit時的狀態。
git checkout
–檔名,其實是用版本庫里的版本替換工作區的版本,無論工作區是修改還是刪除,都可以「一鍵還原」。
注意點:
場景1:當你改亂了工作區某個檔案的內容,想直接丟棄工作區的修改時,用命令git checkout – file。
場景2:當你不但改亂了工作區某個檔案的內容,還新增到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset head file,就回到了場景1,第二步按場景1操作。
1、git rm 檔名 表示刪除檔案
當先使用git rm ,再使用git commit 時才會將倉庫中的檔案刪除。否則使用git checkout可以將一鍵還原(無論刪除還是修改)
關聯本地庫和遠端庫:
要關聯乙個遠端庫,使用命令git remote add origin git@server-name:path/repo-name.git;
關聯後,使用命令git push -u origin master第一次推送master分支的所有內容;
此後,每次本地提交後,只要有必要,就可以使用命令git push origin master推送最新修改;
轉殖遠端庫:
git clone [email protected]:michaelliao/gitskills.git ssh協議方式
git clone https協議方式
建立分支並且切換到該分支命令:
git checkout -b dev
等價於:
git branch dev
git branch 用於檢視當前分支
git merge dev 合併dev分支到當前分支
git branch -d 分支名 刪除分支
用git log –graph 命令可以看到分支合併圖。
git log –graph –pretty=oneline –abbrev-commit
git merge -no-ff -m 「合併資訊提醒」 分支名 該命令是採用commit的方式提交合併(即有合併分支記錄)
多人協作的工作模式通常是這樣:
1、首先,可以試圖用git push origin branch-name推送自己的修改;
2、如果推送失敗,則因為遠端分支比你的本地更新,需要先用git pull試圖合併;
3、如果合併有衝突,則解決衝突,並在本地提交;
4、沒有衝突或者解決掉衝突後,再用git push origin branch-name推送就能成功!
如果git pull提示「no tracking information」,則說明本地分支和遠端分支的鏈結關係沒有建立,
用命令git branch –set-upstream branch-name origin/branch-name。
這就是多人協作的工作模式,一旦熟悉了,就非常簡單。
git checkout -b branch-name origin/branch-name 在本地建立和遠端分支對應的分支
在實際開發中,我們應該按照幾個基本原則進行分支管理:
首先,master分支應該是非常穩定的,也就是僅用來發布新版本,平時不能在上面幹活;
那在哪幹活呢?幹活都在dev分支上,也就是說,dev分支是不穩定的,到某個時候,比如1.0版本發布時,再把dev分支合併到master上,在master分支發布1.0版本;
你和你的小夥伴們每個人都在dev分支上幹活,每個人都有自己的分支,時不時地往dev分支上合併就可以了。
git stash 用來儲存當前的工作現場。
git stash list 檢視工作現場列表
工作現場還在,git把stash內容存在某個地方了,但是需要恢復一下,有兩個辦法:
另一種方式是用git stash pop,恢復的同時把stash內容也刪了。
敲命令git tag commit的id號 就可以打乙個新標籤。(需要先切換到該分支下)
git tag檢視所有標籤。
git show 檢視標籤資訊
建立帶有說明的標籤,用-a指定標籤名,-m指定說明文字,如git tag -a v0.1 -m 「version 0.1 released」 3628164
git tag -d v0.1 在本地刪除標籤
git push origin 推送某個標籤到遠端
git push origin –tags 一次性推送全部尚未推送到遠端的本地標籤
注意:刪除標籤(如果標籤已經推送到遠端)
1、先從本地刪除標籤。git tag -d v0.9
2、從遠端刪除標籤。git push origin :refs/tags/v0.9
git remote rm origin 刪除已有的github遠端庫
git基礎學習
git基礎學習 git是乙個分布式版本控制軟體,原來是linux核心開發者林納斯 托瓦茲 linus torvalds 為了更好地管理linux核心開發而創立的。自誕生於 2005 年以來,git 日臻成熟完善,在高度易用的同時,仍然保留著初期設定的目標。速度,分布式,強大的分支。提到git,不得不...
Git基礎學習
本文總結從零基礎開始學習git的過程,掌握基礎命令的使用 新生成的.git目錄裡面會包含所有的該倉庫的版本控制資訊,所以不要刪除該目錄。為倉庫新增檔案需要兩個步驟 1.新增檔案 2.提交到倉庫 git add readme.md 這時readme.md檔案就成功新增到倉庫中了,git add命令還可...
Git基礎學習
github生成ssh可以避免每次輸入使用者名稱和密碼 參考 git checkout 檔名 回到add進index的那一版,add後所做的操作會沒有掉 配合reset可以直接回到修改之前的樣子,即使沒有add 參考 git的狀態及撤銷修改 厲害的git reset hard 參考 gitk git...