1、git init 將該目錄作為倉庫資料夾,執行後會生成乙個.git資料夾,這裡面的東西不要隨意改動
2、git add 新增檔案到暫存區
3、git commit -m "mmessage" 將快取中的檔案提交到git
4、git reset head
可以把暫存區的修改撤銷掉(unstage),重新放回工作區
5、git checkout -- 把filename檔案在工作區的修改全部撤銷,這裡有兩種情況:
一種是filename自修改後還沒有被放到暫存區,現在,撤銷修改就回到和版本庫一模一樣的狀態;
一種是filename已經新增到暫存區後,又作了修改,現在,撤銷修改就回到新增到暫存區後的狀態。
6、git status 檢視暫存區的狀態
第1步:建立ssh key。在使用者主目錄下,看看有沒有.ssh目錄,如果有,再看看這個目錄下有沒有id_rsa
和id_rsa.pub
這兩個檔案,如果已經有了,可直接跳到下一步。如果沒有,開啟shell(windows下開啟git bash),建立ssh key:
$ ssh-keygen -t rsa -c "[email protected]"
你需要把郵件位址換成你自己的郵件位址,然後一路回車,使用預設值即可,由於這個key也不是用於軍事目的,所以也無需設定密碼。
如果一切順利的話,可以在使用者主目錄裡找到.ssh
目錄,裡面有id_rsa
和id_rsa.pub
兩個檔案,這兩個就是ssh key的秘鑰對,id_rsa
是私鑰,不能洩露出去,id_rsa.pub
是公鑰,可以放心地告訴任何人。
第2步:登陸github,開啟「account settings」,「ssh keys」頁面:
然後,點「new ssh key」,填上任意title,在key文字框裡貼上id_rsa.pub
檔案的內容:
git push origin master
二、建立與合併分支
head
嚴格來說不是指向提交,而是指向master
,master
才是指向提交的,所以,head
指向的就是當前分支。
git checkout -b dev 床架乙個dev分支並將head指向dev這個分支
git branch
檢視當前分支:
git branch 建立分支
切換分支:git checkout
合併某分支到當前分支:git merge
刪除分支:git branch -d
分支管理的策略:
首先,master
分支應該是非常穩定的,也就是僅用來發布新版本,平時不能在上面幹活;
那在哪幹活呢?幹活都在dev
分支上,也就是說,dev
分支是不穩定的,到某個時候,比如1.0版本發布時,再把dev
分支合併到master
上,在master
分支發布1.0版本;
三、stash 功能
git還提供了乙個stash
功能,可以把當前工作現場「儲藏」起來,等以後恢復現場後繼續工作。
git stash
git把stash內容存在某個地方了,但是需要恢復一下,有兩個辦法:
另一種方式是用git stash pop
,恢復的同時把stash內容也刪了
開發乙個新feature,最好新建乙個分支;
如果要丟棄乙個沒有被合併過的分支,可以通過git branch -d
強行刪除。
多人協作時:
首先,可以試圖用git push origin
推送自己的修改;
如果推送失敗,則因為遠端分支比你的本地更新,需要先用git pull
試圖合併;
如果合併有衝突,則解決衝突,並在本地提交;
沒有衝突或者解決掉衝突後,再用git push origin
推送就能成功!
如果git pull
提示no tracking information
,則說明本地分支和遠端分支的鏈結關係沒有建立,用命令git branch --set-upstream-to
origin/
。這就是多人協作的工作模式,一旦熟悉了,就非常簡單。
git tag
用於新建乙個標籤,預設為head
,也可以指定乙個commit id
建立帶有說明的標籤,用-a
指定標籤名,-m
指定說明文字:
it tag -a v0.1 -m "version 0.1 released" 1094adb
用命令git show
可以看到說明文字
注意:標籤總是和某個commit掛鉤。如果這個commit既出現在master分支,又出現在dev分支,那麼在這兩個分支上都可以看到這個標籤
git config --global alias.unstage 'reset head'
git 版本管理常用命令
1.git配置 git config global user.name git config global user.email 3.本地倉庫初始化 git init4.免密碼訪問 ssh keygen t rsa c email address 命令 ssh keygen 一般會要求確認位置和輸入...
git 版本管理常用命令
0.git pull 拉取遠端版本庫到本地並自動merge,類似 git fetch git merge 但不完全等價。git fetch和git pull的區別 示例 git pull 遠端主機名 遠端分支名 本地分支名 git pull origin master 1.git staus 檢視本...
git版本管理中常用到的命令
git status 檢視當前版本的狀態 git branch a 檢視遠端集中庫所有版本 git branch v 檢視當前系統中所有版本 git remote add upstream 位址 將遠端分支位址加入到當前系統中 git fetch upstream develop 獲取遠端分支的 g...