工作中對於專案的管理主要是基於git的,學習git還是很重要的。。。。。。
git的特點
git相關引數的配置 用來指定自己的機器
git config --global user.name 「your name"
git config --global user.email 「your email"
git倉庫的建立
mkdir path/filename
cd paht/filename
git init
通過以上操作,就可以將本地的乙個目錄宣告為git倉庫,可以通過ls -a來檢視當前目錄下是否有.git隱藏檔案,該檔案是用來跟蹤和管理版本庫的,不可亂動。
關於基本操作
touch filename
git add filename //將filename新增到當前的倉庫內
git commit -m 「tps」 //將新增到倉庫內的檔案提交到倉庫內,其中tips是用來標記本次提交的提示資訊 可以多次add然後一次commit
git status //用來顯示當前倉庫的狀態,例如修改了當前的某個檔案但是還未提交,就會提示修改了其中的某個檔案
git diff filename //用來顯示當前檔案與之前的檔案有哪些區別
git log //用來顯示從最近到最遠的提交日誌
git reset —-hard head~num //用來會退到之前的某個版本
git reset —-hard commit_id //用來定位到某個確定的時間點
git reflog //可以用來檢視歷史的每一次命令,同時可以檢視對應的commit id
git庫可以分為兩個部分,乙個為工作區,乙個為版本庫。其中版本庫分為暫存區和分支區。
例如,對於readme.txt檔案,先對其進行修改,然後使用git add將其加入到暫存區內,然後再次修改readme.txt檔案,這時使用git commit命令將暫存區內的檔案提交到分支區,此時只有第一次修改的內容會被提交,第二次修改的內容則不會被提交;如果想要提交第二次修改的內容,則需要重新執行git add,將第二次修改的內容新增到暫存區,同時執行git commit將其提交
git checkout —- filename //將工作區內檔案的修改進行撤銷
git reset head filename //可以將暫存區內的修改撤銷,並回退到工作區
注意以上幾種撤銷之間的區別:
如果不是要進行刪除,則可以採用git checkout —- filename命令將版本庫內的內容還原到工作區
通過將本地庫與github上的庫相關聯實現分布式控制,github上的庫與本地的庫之間進行傳輸採用的是ssh加密的方式。即本地庫的私鑰和hub的公鑰鑰進行配對。
ssh-keygen -t rsa -c "[email protected]」 //用來生成對應的公鑰和私鑰
上述命令可以在.ssh目錄下生成兩個檔案,id_rsa和id_rsa.pub兩個檔案,分別表示一對私鑰和公鑰,其中公鑰需要新增到github倉庫中,這樣的話,只有具有對應的私鑰的使用者才可以對專案中的內容進行修改。
git remote add origin [email protected]:///origin表示遠端庫的名字,一般預設情況下使用這個名字 表示你的github名稱 用來表示與本地倉庫相繫結的倉庫
git push -u origin master //origin表示需要推送的遠端庫的名稱 master表示需要推送到的分支 -u表示第一次新增時將本地的master分支推送到遠端庫的master分支,還會將本地的master分支與遠端庫的master分支相關聯
git push origin master //將本地的master推送到遠端庫中與其對應的分支上
git clone [email protected]:///將遠端庫拷貝到本地庫
關於分支
所謂分支,就是一段時間鏈,每個節點儲存了對應提交的內容,而head預設是指向了master,master是乙個指標,指向了主鏈的最新節點。
git checkout -b dev //建立dev分支並切換到dev分支,所謂建立就是新建了乙個dev指標指向當前的最新節點,所謂切換就是將head轉而指向dev指標
此指令相當於
git branch dev //建立dev分支
git checkout dev //切換到dev分支
使用git branch來顯示當前庫內包含的分支
當前分支前會有*標註
git merge
//將指向的分支合併到當前分支
git merge —no-ff -m 「tip」
//通過禁止使用fast foward模式,可以在刪除分支後保留分支的資訊
git branch -d
//將指向的分支刪除
git log --graph //使用此命令可以檢視分支變化圖
git stash //此命令可以將當前分支的內容壓棧進行儲存,然後就可以切換到其他的分支
對於 git push origin master這種,可能會產生衝突,此時可以先採用git pull將庫的內容拉下來,然後在本地解決衝突之後再進行push操作。
git rebase
關於標籤
git tag //可以為最近的commit打上標籤
git tag //可以顯示當前的所有tag
git tag commit_id //為指定的commit打上標籤
git tag -a -m 「tip」 commit_id //為指定的commit打上標籤和說明性的文字
git show //顯示指定tag的說明性文字
git一些基本操作
1.建立乙個branch 檢視當前已經存在的branch git branch git remote v 建立乙個新的branch在伺服器上 git push upstream dev 將自己的origin和server的upstream關聯後,才能通過 git fetch upstream 來將s...
git的一些基本操作
git基礎學習筆記 今天簡單學習了一下git的一些知識和基本的命令,寫在這裡吧,我現在的弱智水平,這些應該差不多了。本地初始化倉庫 git init建立ssh key ssh keygen t rsa c youremail example.com在github賬戶中add ssh key,自己命名...
git的一些基本操作
首先git下好以後會有3個檔案 分別為bash為cmd的加強版,其中加入了一些cmd沒有的功能,因此一般而言選擇使用bash而非cmd gui為帶影象的版本 在gitlab中的new project裡面 project path填寫工程的名稱 在本地檔案中選取乙個資料夾,eg d盤 在d盤中右鍵,選...