文章出處

用戶信息

當安裝完 Git 應該做的第一件事就是設置你的用戶名稱與郵件地址。 這樣做很重要,因為每一個 Git 的提交都會使用這些信息,并且它會寫入到你的每一次提交中,不可更改:

git config –global user.name “John Doe”
git config –global user.email johndoe@example.com

獲取命令幫助

git help verb
git verb help
man git-verb

檢查配置信息

如果想要檢查你的配置,可以使用 git config –list 命令來列出所有 Git 當時能找到的配置。

在現有目錄中初始化倉庫

如果你打算使用 Git 來對現有的項目進行管理,你只需要進入該項目目錄(本地路徑)并輸入: 
git init

如果你是在一個已經存在文件的文件夾(而不是空文件夾)中初始化 Git 倉庫來進行版本控制的話,你應該開始跟蹤這些文件并提交。 你可通過 git add 命令來實現對指定文件的跟蹤,然后執行 git commit 提交:

git add ***
$ **git add LICENSE

git commit -m ‘initial project version’

下載代碼

如果你想下載托管在git上的代碼,只需要知道代碼托管路徑,然后輸入:
git clone https://github.com/libgit2/libgit2
如果你想重命名下載到本地的目錄那么輸入:
git clone https://github.com/libgit2/libgit2 foldername
這將執行與上一個命令相同的操作,不過在本地創建的倉庫名字變為 foldername。

記錄每次更新

檢查當前文件狀態

要查看哪些文件處于什么狀態,可以用 git status 命令。 如果在克隆倉庫后立即使用此命令,會看到類似這樣的輸出:

git status

現在,讓我們在項目下創建一個新的 README 文件。 如果之前并不存在這個文件,使用 git status 命令,你將看到一個新的未跟蹤文件:

echo ‘Readme文件內容’ > README
git status

使用這個命令你會看到哪些文件沒有被版本庫記錄了。

跟蹤新文件

把剛剛創建的README放入版本庫中跟蹤,只需要: $ git add README
git status

狀態簡覽

git status -s
 M README
MM Rakefile
A  lib/git.rb
M  lib/simplegit.rb
?? LICENSE.txt
新添加的未跟蹤文件前面有 ?? 標記,新添加到暫存區中的文件前面有 A 標記,修改過的文件前面有 M 標記。 你可能注意到了 M 有兩個可以出現的位置,出現在右邊的 M 表示該文件被修改了但是還沒放入暫存區,出現在靠左邊的 M 表示該文件被修改了并放入了暫存區。 例如,上面的狀態報告顯示: README 文件在工作區被修改了但是還沒有將修改后的文件放入暫存區,lib/simplegit.rb 文件被修改了并將修改后的文件放入了暫存區。 而 Rakefile 在工作區被修改并提交到暫存區后又在工作區中被修改了,所以在暫存區和工作區都有該文件被修改了的記錄。

忽略文件

一般我們總會有些文件無需納入 Git 的管理,也不希望它們總出現在未跟蹤文件列表。 通常都是些自動生成的文件,比如日志文件,或者編譯過程中創建的臨時文件等。 在這種情況下,我們可以創建一個名為 .gitignore 的文件,列出要忽略的文件模式。 來看一個實際的例子:

cat .gitignore
這個命令表示讀取.gitignore文件下的內容,并輸出到控制臺上

查看已暫存和未暫存的修改

要查看尚未暫存的文件更新了哪些部分,不加參數直接輸入 git diff 若要查看已暫存的將要添加到下次提交里的內容,可以用 git diff –cached 命令

提交更新

提交更新之前,git status看下所有修改是否都被記錄了,然后
git commit

可能會進入vim模式,這時候 ctrl+c 輸入 :wq 保存文件并退出,也可以

git commit -m “Story 182: Fix benchmarks for speed”

跳過使用暫存區域

正常的提交流程是:
git status 查看狀態
git add . 放入暫存區域
git commit -m “提交記錄”

來提交,如果你覺得這樣太麻煩,可以-a來跳過暫存區域: $ git commit -a -m ‘added new benchmarks’

移除文件

移除文件分兩種,是否在當前目錄保留這個文件,需要保留則:
git rm –cached filename 不需要保留則:
git rm filename

查看提交歷史

git log
即可。至于更高端的用法,查看文檔

撤銷操作

類似于svn的revert操作:
git checkout – filename.md 
git status

遠程倉庫的使用

  • 新代碼publish到新的倉庫 如果你想把你的沒有被git托管的代碼發布到github上,那么按照下面的操作:
    echo “readme文件內容” » README.md
    git init
    git add README.md
    git commit -m “first commit”
    git remote add origin https://github.com/cuicheng11165/1758.git
    git push -u origin master

  • 現有倉庫發布到遠程倉庫 如果git已經在本地托管了,那么只需要:
    git remote add origin https://github.com/cuicheng11165/1758.git
    git push -u origin master

拉取遠程的改動分為pull 和fetch,pull相當于fetch+merge
* fetch的使用:
git fetch origin master
git merge
* pull的使用:
git pull origin master

官方文檔

該文章托管在 http://simmon.club/blog/git-cmd-instruction/


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()