Git 使用 git init 命令來初始化一個 Git 倉庫,Git 的不少命令都須要在 Git 的倉庫中運行,因此 git init 是使用 Git 的第一個命令。
在執行完成 git init 命令後,Git 倉庫會生成一個 .git 目錄,該目錄包含了資源的全部元數據,其餘的項目目錄保持不變。git
git init
,該命令執行完後會在當前目錄生成一個 .git 目錄git init newrepo
,初始化後,會在 newrepo 目錄下出現一個名爲 .git 的目錄。$ mkdir test $ cd test/ $ git init Initialized empty Git repository in D:/Workspace/Git/test/.git/
使用 git clone 從現有的 Git 倉庫中拷貝項目。克隆倉庫的命令格式爲:git clone <repo>
,若是須要克隆到指定的目錄,可使用如下命令格式:git clone <repo> <directory>
。(repo 指 Git 倉庫,directory 指本地目錄)
默認狀況下,Git 會按照你提供的 URL 所指示的項目的名稱建立你的本地項目目錄。一般就是該 URL 最後一個/以後的項目名稱,若是你想要一個不同的名字,你能夠在該命令後加上你想要的名稱。github
$ git clone git@github.com:lucky-zhangcd/hello.git Cloning into 'hello'... remote: Counting objects: 12, done. remote: Compressing objects: 100% (6/6), done. remote: Total 12 (delta 0), reused 3 (delta 0), pack-reused 0 Receiving objects: 100% (12/12), 2.12 KiB | 310.00 KiB/s, done.
git add 命令能夠將該文件添加到緩存。緩存
$ touch hello.py $ ls hello.py helloworld.py README.md $ git status -s ?? hello.py
git status 命令用於查看項目的當前狀態。在使用該命令時加 -s 參數,能夠得到簡短的結果輸出。若是沒有加該參數則會詳細輸出內容。編輯器
$ git add hello.py $ git status -s A hello.py $ git status On branch master Your branch is up to date with 'origin/master'. Changes to be committed: (use "git reset HEAD <file>..." to unstage) new file: hello.py
git diff 查看執行 git status 的結果的詳細信息。
git diff 命令顯示已寫入緩存與已修改但還沒有寫入緩存的改動的區別。git diff 有兩個主要的應用場景。spa
顯示摘要而非整個diff:git diff --stat
git status 顯示上次提交更新後的更改或者寫入緩存的改動,而 git diff 一行一行地顯示這些改動的具體信息。
***命令行
使用 git add 命令將想要快照的內容吸入緩存區,而執行 git commit 將緩存區內容添加到倉庫中。
在 git commit 中使用 -m 選項以在命令行中提交註釋。若是沒有設置 -m 選項,Git 會嘗試爲你打開一個編輯器以填寫提交信息。
***code
git reset HEAD 命令用於取消已緩存的內容。git reset HEAD 以取消以前 git add 添加,但不但願包含在下一提交快照中的緩存。
***遞歸
git rm <file>
。git rm -f <file>
。git rm -- cached <file>
。能夠遞歸刪除,即若是後面跟的是一個目錄做爲參數,則會遞歸刪除整個目錄中的全部子目錄和文件:git rm -r
。
***資源
git mv 命令用於移動或重命名一個文件、目錄、軟鏈接。rem