Git-----教程

1.下載安裝git?

2.$ git config --global user.name "Your Name"? $ git config --global user.email "email@example.com"

3.創建版本庫$ mkdir learngit$ cd learngit$ pwdpwd命令用于顯示當前目錄git init 把當前目錄變為可管理的倉庫$ git init如果你沒有看到.git目錄,是因為這個目錄默認是隱藏的,用ls -ah命令就可以看見。

4.添加文件用命令git add告訴Git,把文件添加到倉庫用命令git commit告訴Git,把文件提交到倉庫git commit -m命令 -m后面輸入的是本次提交的說明為什么Git添加文件需要add,commit一共兩步呢?因為commit可以一次提交很多文件,所以你可以多次add不同的文件,比如:$ git add file1.txt$ git add file2.txt file3.txt$ git commit -m "add 3 files."

5.查看結果$ cat readme.txt查看某個文件運行git status命令看看結果git status命令可以讓我們時刻掌握倉庫當前的狀態git diff +文件名 此命令查看當前文件上次修改了哪些內容$ git diff readme.txt diff --git a/readme.txt b/readme.txtindex 46d49bf..9247db6 100644--- a/readme.txt+++ b/readme.txt@@ -1,2 +1,2 @@-Git is a version control system.+Git is a distributed version control system. Git is free software.

6.查看歷史記錄$git log ?

7.版本回退在Git中,用HEAD表示當前版本,也就是最新的提交3628164...882e1e0(注意我的提交ID和你的肯定不一樣)上一個版本就是HEAD^,上上一個版本就是HEAD^^,當然往上100個版本寫100個^比較容易數不過來,所以寫成HEAD~100$git reset--hard HEADGit提供了一個命令git reflog用來記錄你的每一次命令現在總結一下:HEAD指向的版本就是當前版本,因此,Git允許我們在版本的歷史之間穿梭,使用命令git reset --hard commit_id。穿梭前,用git log可以查看提交歷史,以便確定要回退到哪個版本。要重返未來,用git reflog查看命令歷史,以便確定要回到未來的哪個版本。

8.刪除文件$ rm test.txt

二 、創建遠程倉庫

第1步:創建SSHKey。在用戶主目錄下,看看有沒有.ssh目錄,如果有,再看看這個目錄下有沒有id_rsa和id_rsa.pub這兩個文件,如果已經有了,可直接跳到下一步。如果沒有,打開Shell(Windows下打開Git Bash),創建SSH Key:$ ssh-keygen -t rsa -C "youremail@example.com"

第2步:登錄github 添加key為什么GitHub需要SSHKey呢?因為GitHub需要識別出你推送的提交確實是你推送的,而不是別人冒充的,而Git支持SSH協議,所以,GitHub只要知道了你的公鑰,就可以確認只有你自己才能推送。當然,GitHub允許你添加多個Key。假定你有若干電腦,你一會兒在公司提交,一會兒在家里提交,只要把每臺電腦的Key都添加到GitHub,就可以在每臺電腦上往GitHub推送了。最后友情提示,在GitHub上免費托管的Git倉庫,任何人都可以看到喔(但只有你自己才能改)。所以,不要把敏感信息放進去。

第3部:把本地倉庫和遠程倉庫關聯起來。$ git remote add origin git@github.com:michaelliao/learngit.git請千萬注意,把上面的michaelliao替換成你自己的GitHub賬戶名,否則,你在本地關聯的就是我的遠程庫,關聯沒有問題,但是你以后推送是推不上去的,因為你的SSH Key公鑰不在我的賬戶列表中。添加后,遠程庫的名字就是origin,這是Git默認的叫法,也可以改成別的,但是origin這個名字一看就知道是遠程庫。把本地庫的內容推送到遠程,用git push命令,實際上是把當前分支master推送到遠程。由于遠程庫是空的,我們第一次推送master分支時,加上了-u參數,Git不但會把本地的master分支內容推送的遠程新的master分支,還會把本地的master分支和遠程的master分支關聯起來,在以后的推送或者拉取時就可以簡化命令。推送成功后,可以立刻在GitHub頁面中看到遠程庫的內容已經和本地一模一樣:要關聯一個遠程庫,使用命令git remote add origin git@server-name:path/repo-name.git;關聯后,

使用命令git push -u origin master第一次推送master分支的所有內容;此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改GitHub給出的地址不止一個,還可以用https://github.com/michaelliao/gitskills.git這樣的地址。

實際上,Git支持多種協議,默認的git://使用ssh,但也可以使用https等其他協議。使用https除了速度慢以外,還有個最大的麻煩是每次推送都必須輸入口令,但是在某些只開放http端口的公司內部就無法使用ssh協議而只能用https。要克隆一個倉庫,首先必須知道倉庫的地址,然后使用git clone命令克隆。Git支持多種協議,包括https,但通過ssh支持的原生git協議速度最快Git鼓勵大量使用分支:查看分支:git branch創建分支:git branch切換分支:git checkout創建+切換分支:git checkout -b合并某分支到當前分支:git merge刪除分支:git branch -d

三.命令

http://www.cnblogs.com/cspku/articles/Git_cmds.html

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Git 與 SVN 區別 Git不僅僅是個版本控制系統,它也是個內容管理系統(CMS),工作管理系統等。如果你是一...
    心至靜行至遠閱讀 714評論 0 5
  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,700評論 9 163
  • 在學習過程中,很多人面臨這樣的困惑,經常是上了很多課,聽了很多講,讀了很多文章,回頭卻發現自己好像沒有什么印象了,...
    青葉007閱讀 266評論 1 4
  • 公元前323年某一天,亞歷山大大帝在巴比倫英年早逝,年僅33歲。同一天,第歐根尼在科林斯壽終正寢,享年90。這兩人...
    Destiny_4ad2閱讀 704評論 0 3
  • 有一個朋友問我,其實你有沒有想過,那些喜歡對方后在一起要過一輩子的戀人。如果最后因為這樣那樣的原因不能在一起,如果...
    狐貍說謊了閱讀 754評論 10 12