1. 程式人生 > >git學習筆記1-剛剛入門(霜之小刀)

git學習筆記1-剛剛入門(霜之小刀)

git學習筆記1-剛剛入門(霜之小刀)

歡迎轉載和引用,若有問題請聯絡
若有疑問,請聯絡
Email : [email protected]
QQ:2279557541


1、git中檔案的狀態

這個一開始我都挺難理解的,因為我以前是使用svn作為版本管理工具的,svn中檔案的狀態有《未跟蹤》,《未修改》,《已修改》這三種,而git中檔案的狀態卻有4種。
我抄了《精通git 第二版》這本書的一張圖
這裡寫圖片描述

這裡多了個已暫存這種狀態。我學習了下,覺得“已暫存”這種狀態其實叫“待提交”更加契合,而這種狀態就是為了後面提交版本做準備的。

2、從新建檔案到提交

2.1搭建實驗環境

  • 我在github上建立了一個賬戶,然後建立了一個倉庫
  • 根據倉庫的地址,將倉庫克隆下來
git clone 倉庫地址
  • 配置我的郵箱地址和使用者名稱
git config --global user.email "郵箱地址"
git config --global user.name "使用者名稱"

2.1將未跟蹤檔案變為待提交檔案,然後提交

當倉庫clone下來後,檢視目錄,github上一個新的倉庫,只有一個README.md檔案。
這裡我們用下面命令新新增一個檔案並將其加到待提交區
首先在該目錄下建立一個新的檔案

echo "aaa" >test.txt

檢視當前倉庫狀態

git status

得到結果

On branch master
Your branch is up-to-date with 'origin/master'.
Untracked files:
  (use "git add <file>..." to include in what will be committed)

        test.txt

nothing added to commit but untracked files present (use "git add" to
track)

意思是說該目錄下有個text.txt的檔案沒有被跟中,使用git add命令進行跟蹤。
然後對text.txt進行跟蹤管理,放入等待提交的暫存區。

git add test.txt

在看一下倉庫的狀態

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:   test.txt

意思是說有一個新加的檔案需要提交。


下面就進行提交

git commit -m "註釋"

這裡就完成了,但是,但是!!!!!!!!
當我們檢視github上的版本庫的時候,還是沒有該檔案,why?
其實原因是這樣的,開始的git clone命令是把網上的整個版本庫clone到了本機,而我們的提交也是提交到了本地,如果需要提交到網上還需要

git push

這樣就完成了從本地新建一個檔案提交到同步到網上倉庫的全過程。

2.2本地對檔案做的修改,如何提交的呢?

其實我覺得在git中提交新檔案和提交修改沒啥大的區別。
都是通過git add將檔案狀態改為“已暫存”,放到待提交區域,然後通過git commit就可以提交了,如果需要推送到網上,就使用git push,簡單的一筆,對不???