Git使用雜燴
git command list:
1.git
2.首先,選擇一個合適的地方,建立一個空目錄:
mkdir learngit
cd learngit
pwd
第二步,通過git init命令把這個目錄變成Git可以管理的倉庫:
git init
Initialized empty Git repository in /Users/michael/learngit/.git/
3.把檔案新增到版本庫
第一步,用命令git add告訴Git,把檔案新增到倉庫:
git add readme.txt
第二步,用命令git commit告訴Git,把檔案提交到倉庫:
git commit -m "wrote a readme file" //git commit命令,-m後面輸入的是本次提交的說明,可以輸入任意內容
4.為什麼Git新增檔案需要add,commit一共兩步呢?因為commit可以一次提交很多檔案,所以你可以多次add不同的檔案,比如:
$ git add file1.txt
$ git add file2.txt
$ git add file3.txt
$ git commit -m "add 3 files."
5.$ git status //git status命令可以讓我們時刻掌握倉庫當前的狀態
$ git diff readme.txt //檢視difference,顯示的格式正是Unix通用的diff格式
$ git add readme.txt
$ git status
$ git commit -m "add distributed"
$ git status
6.版本回退
$ git log //告訴我們歷史記錄 git log命令顯示從最近到最遠的提交日誌
$ git log --pretty=oneline // 如果嫌輸出資訊太多,看得眼花繚亂的,可以試試加上--pretty=oneline引數
我們要把當前版本“append GPL”回退到上一個版本“add distributed”,就可以使用git reset命令:
$ git reset --hard HEAD^ //上一個版本就是HEAD^,上上一個版本就是HEAD^^,當然往上100個版本寫100個^比較容易數不過來,所以寫成HEAD~100
HEAD is now at ea34578 add distributed
$ git reflog //命令git reflog用來記錄你的每一次命令
$ git reflog
064e467 HEAD@{0}: commit: fix bug
18b2856 HEAD@{1}: commit: fix bug
16bf0d7 HEAD@{2}: checkout: moving from 1.7.9 to abc
16bf0d7 HEAD@{3}: checkout: moving from 1.7.7 to 1.7.9
//撤銷修改
$ git checkout -- readme.txt
用命令git reset HEAD file可以把暫存區的修改撤銷掉(unstage),重新放回工作區:
$ git reset HEAD readme.txt
Unstaged changes after reset:
M readme.txt
刪除檔案
$ git add test.txt
$ git commit -m "add test.txt"
直接在本地檔案管理器中把沒用的檔案刪了,或者用rm命令刪了:
$ rm test.txt
兩種解決方案:
一是確實要從版本庫中刪除該檔案,那就用命令git rm刪掉,並且commit:
$ git rm test.txt
$ git commit -m "remove test.txt"
二是用版本庫裡的版本替換工作區的版本:
$ git checkout -- test.txt
1.git
2.首先,選擇一個合適的地方,建立一個空目錄:
mkdir learngit
cd learngit
pwd
第二步,通過git init命令把這個目錄變成Git可以管理的倉庫:
git init
Initialized empty Git repository in /Users/michael/learngit/.git/
3.把檔案新增到版本庫
第一步,用命令git add告訴Git,把檔案新增到倉庫:
git add readme.txt
第二步,用命令git commit告訴Git,把檔案提交到倉庫:
git commit -m "wrote a readme file" //git commit命令,-m後面輸入的是本次提交的說明,可以輸入任意內容
4.為什麼Git新增檔案需要add,commit一共兩步呢?因為commit可以一次提交很多檔案,所以你可以多次add不同的檔案,比如:
$ git add file1.txt
$ git add file2.txt
$ git add file3.txt
$ git commit -m "add 3 files."
5.$ git status //git status命令可以讓我們時刻掌握倉庫當前的狀態
$ git diff readme.txt //檢視difference,顯示的格式正是Unix通用的diff格式
$ git add readme.txt
$ git status
$ git commit -m "add distributed"
$ git status
6.版本回退
$ git log //告訴我們歷史記錄 git log命令顯示從最近到最遠的提交日誌
$ git log --pretty=oneline // 如果嫌輸出資訊太多,看得眼花繚亂的,可以試試加上--pretty=oneline引數
我們要把當前版本“append GPL”回退到上一個版本“add distributed”,就可以使用git reset命令:
$ git reset --hard HEAD^ //上一個版本就是HEAD^,上上一個版本就是HEAD^^,當然往上100個版本寫100個^比較容易數不過來,所以寫成HEAD~100
HEAD is now at ea34578 add distributed
$ git reflog //命令git reflog用來記錄你的每一次命令
$ git reflog
064e467 HEAD@{0}: commit: fix bug
18b2856 HEAD@{1}: commit: fix bug
16bf0d7 HEAD@{2}: checkout: moving from 1.7.9 to abc
16bf0d7 HEAD@{3}: checkout: moving from 1.7.7 to 1.7.9
//撤銷修改
$ git checkout -- readme.txt
用命令git reset HEAD file可以把暫存區的修改撤銷掉(unstage),重新放回工作區:
$ git reset HEAD readme.txt
Unstaged changes after reset:
M readme.txt
刪除檔案
$ git add test.txt
$ git commit -m "add test.txt"
直接在本地檔案管理器中把沒用的檔案刪了,或者用rm命令刪了:
$ rm test.txt
兩種解決方案:
一是確實要從版本庫中刪除該檔案,那就用命令git rm刪掉,並且commit:
$ git rm test.txt
$ git commit -m "remove test.txt"
二是用版本庫裡的版本替換工作區的版本:
$ git checkout -- test.txt
相關文章
- mysql 大雜燴MySql
- redis 大雜燴Redis
- PHP優化雜燴PHP優化
- oracle雜燴筆記Oracle筆記
- 吉司機大雜燴
- 日常筆記大雜燴筆記
- Generator知識點雜燴
- 運維-技能大雜燴運維
- 網路流大雜燴
- 前端面試題雜燴(答案)前端面試題
- Binder + AMS + AIDL大雜燴AI
- 訊息佇列 大雜燴佇列
- 連通性問題大雜燴
- 一些“最短路”雜燴
- C++八股大雜燴C++
- 一些“並查集”雜燴並查集
- Codeforces 2400+ flows 大雜燴
- “KMP、EXKMP、manacher、最小表示法”大雜燴KMP
- HTML+CSS知識點大雜燴(二)HTMLCSS
- 前端效能最佳化百問大雜燴前端
- 前端三大框架(vue,angular,react)大雜燴前端框架VueAngularReact
- 技術雜燴-20140320
- 雜記:Git與Github簡單使用Github
- Git雜項Git
- 求職之手寫程式碼-手寫原始碼大雜燴求職原始碼
- 人工智慧,大資料,雲端計算大雜燴人工智慧大資料
- Java開發技術大雜燴(三)之電商專案優化、rabbitmq、Git、OSI、VIM、Intellj IDEA、HTTP、JS、JavaJava優化MQGitIntelIdeaHTTPJS
- Java開發技術大雜燴(三)之電商專案優化、rabbitmq、Git、OSI、VIM、Intellj IDEA、HTTP、JS、Java...Java優化MQGitIntelIdeaHTTPJS
- CSS + HTML 小知識點大雜燴(margin合併、塌陷,清除浮動)CSSHTML
- Java開發技術大雜燴(一)之Redis、Jmeter、MySQL的那些事JavaRedisJMeterMySql
- QOJ #1280.Fibonacci Partition/Fibonacci性質大雜燴
- Git SHA-1 雜湊值Git
- git管理複雜專案程式碼Git
- 雜篇:一首詩認識[- Git -]Git
- [Git] Git整理(四) git rebase 的使用Git
- git使用Git
- git 使用Git
- 沒有設計感的資料庫工具,可能會變成極其難用的“大雜燴”資料庫