Git 之 初使用

2022-05-26 22:33:07 字數 3872 閱讀 9657

git是乙個開源的分布式版本控制軟體,用以有效、高速的處理從很小到非常大的專案版本管理。 git 最初是由linus torvalds設計開發的,用於管理linux核心開發。git 是根據gnu通用公共許可證版本2的條款分發的自由/免費軟體,安裝參見:

之前我們寫**,為了防止出錯,我們經常會寫一些功能然後在另外的地方儲存乙份,這種操作是我們能想到的最基本的版本控制。但是這種原式的版本控制,有很多顯著缺點:

為了解決以上版本控制存在問題,應運而生了一批版本控制工具:vss、cvs、svn、git等,其中git屬於絕對霸主地位。

注意:一般版本控制工具包含兩部分

現在我們找到了版本控制神奇git,它是如何用的呢?

macbook-pro-4:pondo yaya$ pwd                   # 進入程式目錄

/users/yaya/pycharmprojects/pondo

macbook-pro-4:pondo yaya$ git init # git初始化

initialized empty git repository in /users/yaya/pycharmprojects/pondo/.git/

初始化後,會在當前目錄自動建立 .git 資料夾,該檔案是git中最重要的資料夾,因為git相關檔案以及版本都將儲存在該資料夾中,通過git命令可以將所有版本儲存在 .git 檔案中,兩條命令建立乙個版本:

macbook-pro-4:pondo wupeiqi$ git status                     # 檢視當前git狀態

on branch master

initial commit

untracked files:

(use "git add ..." to include in what will be committed)

.idea/

db.sqlite3

manage.py

pondo/

readme

templates/

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

macbook-pro-4:pondo wupeiqi$ git add . # 新增當前目錄下所有檔案到版本庫

macbook-pro-4:pondo wupeiqi$ git commit -m '第一次提交' # 提交到版本庫,並填寫版本說明,以便以後回滾。

[master (root-commit) df47fe4] 第一次提交

33 files changed, 879 insertions(+)

create mode 100644 .idea/dictionaries/wupeiqi.xml

create mode 100644 .idea/encodings.xml

create mode 100644 .idea/inspectionprofiles/profiles_settings.xml

...

注意:執行git commit 命令時,可能會提示進行使用者和郵箱的配置,該配置用於記錄當前版本由那個使用者提交

git把管理的檔案分為了兩個區域四個狀態。  

工作區:當前開發程式所在目錄稱為工作區,即:工作開發都是在該目錄,該區域的檔案會有狀態的變化且狀態由git自動檢測,如果程式中檔案做任何操作(增、刪、改),檔案狀態均會被檢測到,可以使用 【git status】命令檢視。  

macbook-pro-4:pondo yaya$ ls                # 檢視原程式目錄

macbook-pro-4:pondo yaya$ git status # 檢視git當前狀態

on branch master

nothing to commit, working tree clean

macbook-pro-4:pondo yaya$ touch a.py # 建立新檔案

macbook-pro-4:pondo yaya$ ls

macbook-pro-4:pondo yaya$ git status # 檢視git當前狀態,檢測到:工作區 a.py 發生變化

on branch master

untracked files:

(use "git add ..." to include in what will be committed)

a.py

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

版本庫:工作區檢測到有檔案發生變化,那麼意味著較上乙個版本之後對程式進行了修改,修改完成之後,可以當做下一版本進行提交,那麼就是執行 【git add .】 將所有檔案提交到暫存區,然後再執行【git commit -m '又乙個版本'】提交到版本庫的分支即可,之後可以使用【git log】命令檢視版本記錄。  

macbook-pro-4:pondo yaya$ ls

macbook-pro-4:pondo yaya$ git status # 檔案顏色為紅色,表示在工作區的被修改狀態

on branch master

untracked files:

(use "git add ..." to include in what will be committed)

a.py

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

macbook-pro-4:pondo yaya$ git add . # 將所有相較上一次版本之後所有的修改新增到暫存狀態

macbook-pro-4:pondo yaya$ git status # 檔案顏色為綠色,表示在版本庫的暫存狀態

on branch master

changes to be committed:

(use "git reset head ..." to unstage)

new file: a.py

macbook-pro-4:pondo yaya$ git commit -m '又一次提交' # 提交到版本庫的分支

[master f139d5d] 又一次提交

1 file changed, 0 insertions(+), 0 deletions(-)

create mode 100644 a.py

macbook-pro-4:pondo yaya$ git log # 檢視歷史版本提交記錄(根據版本commit值可以進行回滾)

commit f139d5d0a648af06d8a1ecadd90faf572afc388a

author: 丫丫 date: fri aug 11 10:02:14 2017 +0800

又一次提交

commit df47fe49fc1f14d9cdd1534baa96f46ec71a9934

author: 丫丫 date: fri aug 11 08:49:49 2017 +0800

第一次提交

目前已使用git的四個命令,這四個命令已經可以代替本地多個檔案儲存版本的方式:

git操作之初始化

1 git連線 git config global user.email git註冊的賬號 git config global user.name git的註冊使用者名稱 git config list 檢視使用者資訊 ssh keygen t rsa c git註冊賬戶 建立sshkey ssh ...

Git之初體驗 持續更新

本文主要通過 git來同步本地與線上伺服器專案,從而熟悉git管理的一些常用命令,非新手請跳過 初次接觸git 註冊帳號 登陸後在右上角點選 號,選擇並點選 new repository 新建 倉庫,私人專案選擇private,公開專案可選擇public 成功建立repository後,官方提供ht...

使用VirtualBox SDK之初步編譯

virtualbox成功編譯出來後,在生成的out資料夾中會發現有sdk資料夾 當然也可以直接從官網下sdk 裡面有例子,但是直接用visual studio編譯的話會出一大堆錯誤,本文就是講解如何使之編譯通過。如果使用visual studio直接建立工程,把例子cpp virtualbox 4....