天天看點

Git超級菜鳥學習 --> 個人常用指令add,commit以及pushGit超級菜鳥學習 --> 個人常用指令add,commit以及push



Git超級菜鳥學習 --> 個人常用指令add,commit以及push

時間 2013-09-27 10:45:50

CSDN部落格

原文 

http://blog.csdn.net/mchdba/article/details/12083965

主題

Git

Git指令行配置

1 安裝Github

2 安裝msysgit

3 要配置使用者名和油箱

  git config --global user.name <使用者名>

 我的指令就是:git config --global user.name mchdbagh

  git config --global user.email <油箱>

 我的指令就是:git config --global [email protected]

4 驗證有沒有連接配接上remote遠端伺服器

ssh -T [email protected]

5 要生成ssh key

$ ssh -keygen

看到需要輸入密碼的,直接2個Enter鍵即可回到主視窗。

去找.ssh裡面的id_isa.pub打開,最好用notepad++打開,的裡面的内容copy出來,然後放到https://網址裡面,加入

如何生成,請看文檔詳細介紹。http://www.worldhello.net/gotgithub/index.html#id6

Git常用指令介紹

git init --初始化項目,剛開始初始化項目的時候使用

git clone --從伺服器上克隆到本地,如果伺服器上面已經有項目了,直接使用這個指令clone到本地進行使用。

git status --檢視版本資訊

git add  --添加本地檔案

git commit --送出更改

git push --tags --将更改推送到伺服器

(1) git init操作

kyman@SKYMAN-CF7E3587 ~
 mkdir test_git

kyman@SKYMAN-CF7E3587 ~
 cd test_git/

kyman@SKYMAN-CF7E3587 ~/test_git
 ls

kyman@SKYMAN-CF7E3587 ~/test_git
$ git init
Initialized empty Git repository in c:/Documents and Settings/skyman/test_git/.git/
 ls -a
  ..  .git           

看到有.git檔案

$ ls -al
total 0
drwxr-xr-x    3 skyman   Administ        0 Sep 25 23:10 .
drwxr-xr-x   41 skyman   Administ        0 Sep 25 23:10 ..
drwxr-xr-x    1 skyman   Administ        0 Sep 25 23:10 .git

$           

看到多另一個.git目錄,表示項目建立成功了。

(2) git clone操作

登陸 https://github.com/,看右下角,如圖下圖,找到打開庫的網址把提示mchdbagh/manual56加到後面,網址就是

https://github.com/mchdbagh/manual56

打開後,點選右下角的HTTPS clone URL欄目下方的複制按鈕,就得到了庫的clone位址 https://github.com/mchdbagh/manual56.git,如圖所示

也可以選擇ssh方式:[email protected]:mchdbagh/manual56.git 

git clone [email protected]:mchdbagh/manual56.git;

打開 git clone [email protected]:mchdbagh/helloworld.git

如果需要自定義一個目錄名,可以寫成 git clone [email protected]:mchdbagh/helloworld.git test_hw

檢測是否clone成功,看到有manual56目錄是否存在

$ ls
AppData           Favorites       NTUSER.DAT  SendTo          _viminfo     manual56                    wc
Application Data  IECompatCache   NetHood     Templates       admovie.jpg  ntuser.dat.LOG              ??????????????????
CMB               IETldCache      PrintHood   UserData        client.log   ntuser.ini                  ??????
Contacts          Local Settings  PrivacIE    VirtualBox VMs  extensions   ntuserdirect_MyManager.dat
Cookies           My Documents    Recent      WINDOWS         helloworld   test_git           

(3) git add 操作實驗

$ cd manual56/
--檢視git目前版本庫的狀态
$ git status 
# On branch master
nothing to commit (working directory clean)

--進入我要修改的章節目錄
$ cd docs/Chapter_17/  
$ vim 17.5.0.0.0.md    --建立一個md檔案,裡面簡單寫“only a test”字元串,wq儲存退出編輯狀态。

-- 檢視狀态
$ git status
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       17.5.0.0.0.md   --看到有紅顔色的一個新的檔案還沒有送出上去,這一行的檔案名顯示為紅色。
nothing added to commit but untracked files present (use "git add" to track)           

添加檔案add

git add 17.5.0.0.0.md添加單個檔案,多個檔案可以用空格來隔開,比如(git add 17.5.0.0.0.md 17.5.0.0.1.md 17.5.0.0.2.md),也可以使用git add -A添加所有的檔案。

--執行添加指令
$ git add 17.5.0.0.0.md

--檢視單個檔案版本狀态
$ git status 17.5.0.0.0.md 
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       new file:   17.5.0.0.0.md
#

--檢視整個庫版本狀态
$ git status 
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       new file:   17.5.0.0.0.md
#           

手動用MarkdownPad打開C:\Documents and Settings\skyman\manual56\docs\Chapter_17\17.5.0.0.0.md,在裡面輸入中文字元串,儲存退出。然後檢視版本庫狀态,顯示綠顔色的表示已經緩存起來了,顯示紅顔色的是修改過的但是沒有緩存起來的。

(4) git commit,修改完之後,進行commit送出 git commit -m "Test change", -m 是指定送出資訊,必填項目

$ git commit -am "Test chanage"
[master 3e96f90] Test chanage
 1 file changed, 1 insertion(+), 1 deletion(-)
 
$ git status 
# On branch master
# Your branch is ahead of 'origin/master' by 2 commits.
#
nothing to commit (working directory clean)
--顯示已經送出到本地版本庫了           

(5)把已經修改的檔案push到伺服器,git push --tags  

--push是以緩存到本地伺服器的檔案。

$ git push origin master  
Counting objects: 13, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (8/8), done.
Writing objects: 100% (10/10), 768 bytes, done.
Total 10 (delta 6), reused 0 (delta 0)
To [email protected]:mchdbagh/manual56.git
   e754e68..3e96f90  master -> master      

OK成功了,然後打開網址https://github.com/xxxxxx/blob/master/docs/Chapter_17/17.5.0.0.0.md去看送出的新内容,見圖檔所示,建立立的檔案17.5.0.0.0.md已經成功上傳到remote檔案伺服器了。

這些項目,如果是個人項目,已經足夠滿足我們的日常使用要求了,但是如果多人協同操作,那還是遠遠不夠的。