Linux下Git的使用
Git是一款開源分佈式版本控制系統,能夠幫助Linux管理內核開發,那麼Linux要如何使用Git呢?下面小編就給大家介紹下Linux使用Git的方法,感興趣的朋友不妨來了解下。
*初始化git倉庫,使用git init命令
*添加文件到git倉庫分兩步:
1、使用git add filename ;可分多次使用,添加多個文件到暫存區
2、使用git commit -m “説明” ;完成提交到分支
*查看工作區狀態,使用git status 命令;如果提示有修改可使用git diff filename 查看修改內容
*HEAD指向當前版本,HEAD^表示上一個版本,HEAD^^上上一個版本……HEAD~100指向之前第100個版本。
*回退版本:使用git log查看提交歷史;使用git log --pretty=oneline 精簡顯示
使用git reset --hard commit_id 回退到版本號為commit_id的版本
*回退版本之後如果想再看改回來,可以使用git reflog 查看歷史命令,找出想改回的版本號,再使用git reset hard commit_id 返回即可。
*注意:git跟蹤並管理的是修改,而不是文件,如果一個文件修改並add之後,再次修改,如果不再次add就提交的話,只會提交第一次的修改。
*撤銷修改:
1、如果文件還在工作區,即沒有add也沒有commit,則使用git checkout -- filename 還原到服務器版即可;
2、如果已經add到暫存區,首先使用git reset HEAD filename從暫存區取回工作區,再按照1進行操作即可;
3、如果已經提交到版本庫,則按照版本回退的方式進行修改即可;
4、如果已經push到遠程倉庫,就麻煩了
*刪除使用以下命令:
1、git rm filename 從工作區刪除
2、git commit -m ”説明“ 更新分支中文件進行刪除
將在工作區的文件刪除之後,可以使用git checkout -- filename 從分支中取回,但是隻能恢復文件到最新版本,最後一次提交之後的修改則不能恢復。
*分支:
1、創建分支
git checkout -b branchname 創建並切換到改分區,相當於一下兩個命令:
git branch branchname 創建分支
git checkout branchname 切換到分區
2、查看當前指向的'分支:git branch 會列出所有分支,當前指向的分支之前多了個*
3、切換分支就是git checkout branchname
4、合併分支:git merge branchname 合併branchname到當前分支
5、刪除分支:git branch -d branchname 刪除branchname分支
注意:創建、合併、刪除分支都非常快,git鼓勵使用分支完成某個任務,合併後刪除分支,和直接在master分支上進行工作是一樣的效果,但是過程更加安全; 這些之所以快是因為在這些過程中我們只是修改了指向分支的指針,如創建一個branch就是創建了一個指向分支的指針,然後修改HEAD指向該指針;即HEAD指向分支,分支就是提交。
*衝突解決:git無法自動合併分支時,就必須首先解決衝突;解決衝突之後,再提交,即完成了合併
使用git log --graph 可以查看分支合併圖。
*保存工作現場 git stash 保存之後就可以進行其他工作 而不影響上次的修改
恢復工作現場:1、git stash apply 恢復時並不刪除stash中內容
2、git stash pop 恢復時會刪除stash中的內容
*遠程庫信息產看使用git remote (-v)加上-v顯示信息更加詳細
*分支推送到遠程庫:即將所有本地的提交推送到遠程庫
git push origin(遠程庫名) master (要推送的分支)
*抓取分支:git pull ; git clone
*協作模式:
1、使用git push origin branchname 推送自己的修改
2、如果推送失敗,因為遠程分支比本地更新,先使用git pull 合併
3、如果合併有衝突,解決衝突,在本地提交
4、再推送
注意:如果使用git pull 合併時提示 ”no tracking information“説明本地分支沒有和遠程分支建立鏈接關係,使用以下指令建立關係:git branch --set -upstream branch origin/branchname
*在本地創建與遠程對應的分支:git branch -b branchname origin/branchname 本地與遠程分支的名稱最好一致
*創建標籤
1、打標籤git tag name 默認標籤打在最新提交的commit上,如果想打在其他版本上,找到commit_id即可
2、顯示標籤:git log -pretty=oneline --abbrev -commit
git tag tag_name commit_id
3、查看標籤:git tag 顯示所有標籤
4、查看標籤信息:git show tag_name
5、創建帶有説明的標籤: git tag -a tag_name -m ”信息“;-a表示標籤名,-m指定説明文字
*操作標籤:git tag -d tag_name 刪除標籤
推送標籤到遠程庫:git push origin tag_name
一次推送所有標籤到遠程庫:git push origin --tag
上面就是Linux使用Git的方法介紹了,本文介紹了git init命令的使用,git的刪除,分支的創建及刪除等,希望你對git的使用有了進一步的瞭解。
-
六招管理你的操作系統詳解
操作系統是管理計算機硬件資源,控制其他程序運行併為用户提供交互操作界面的系統軟件的集合。所以這是在電腦中很重要的哦!所以在window系統下管理好操作系統是很有必要的。那麼今天我們來看看管理的技巧吧!1、保護密碼即便是相信您的朋友,一起打牌的時候還是要...
-
Android操作系統的快捷鍵和技巧
1.首先就是最常用的技巧之一,長按Home鍵可以調出最近使用的6個程序,並將當前程序置入後台運行2.調整音量至最低,就會依次進入振動模式和電話鈴聲靜音3.長按掛機鍵,在彈出的進階菜單中可以選擇飛行模式、靜音模式和關機,但是值得一提的是,這裏的靜音室完全靜音,音樂盒...
-
解讀重定向linux命令應用及語法
解讀重定向linux命令應用及語法1.標準輸入的控制語法:命令文件將命令的執行結果送至指定的文件中。例如:ls-l>list將執行“ls-l”命令的結果寫入文件list中。語法:命令>!文件將命令的執行結果送至指定的文件中,若文件已經存在,則覆蓋。例如:ls-lg>!list將執行“ls-l...
-
win7系統和win8系統的區別
導語:Win7與win8系統相比總體區別不是很大,只是win8功能更加強大一些,Win8新增UI界面,雖然最大的目的是方便平板電腦設備上實現觸摸方面,不過在我們一般電腦上使用似乎也比較新穎,也比較方便。以下是小編為大家精心整理的win7系統和win8系統的區別,歡迎大家參考!win8與...