Git入門與使用

2021-10-05 14:45:20 字數 2782 閱讀 4014

4、git與svn比較

二、git工作流程

三、git四個工作區域

四、分支

五、git常用命令

版本控制(revision control)是指對軟體開發過程中各種程式**、配置檔案及說明文件等檔案變更的管理,是軟體配置管理的核心思想之一。

svnsvn是subversion的簡稱,是乙個開放源**的集中式的版本管理系統,採用分支管理系統,它的設計目標就是取代cvs。說得簡單一點svn就是用於多個人共同開發同乙個專案,共用資源的目的。

gitgit 是乙個開源的分布式版本控制系統,用於敏捷高效地處理任何或小或大的專案。git 是 linus torvalds 為了幫助管理 linux 核心開發而開發的乙個開放原始碼的版本控制軟體。git 與常用的版本控制工具 cvs, subversion 等不同,它採用了分布式版本庫的方式,不必伺服器端軟體支援。

git是分布式的

這也是大家最容易想到的git與svn的不同之處,我們知道svn是乙個集中式的版本控制系統,它實現版本控制的原理就是將多人協作的內容儲存在乙個**倉庫中,客戶端只能通過**倉庫來進行更新和推送資源,而git是分布式的版本控制系統,他不需要**伺服器,也沒有服務端和客戶端之分,實際上每乙個**提交者的主機都作為乙個服務端,每台電腦都有乙個完整的**庫。檔案的修改可以只通過每台電腦之間進行push就可以,但是實際操作過程中不能保證每台電腦都是開機或者可用的,所以一般還是需要一台**伺服器,這台伺服器的目的只方便每台客戶端交換修改資訊。

git 把內容按元資料方式儲存,而 svn 是按檔案

所有的資源控制系統都是把檔案的元資訊隱藏在乙個類似 .svn、.cvs 等的資料夾裡。

git 分支和 svn 的分支不同

分支在 svn 中一點都不特別,其實它就是版本庫中的另外乙個目錄。

git 沒有乙個全域性的版本號,而 svn 有

目前為止這是跟 svn 相比 git 缺少的最大的乙個特徵。

git 的內容完整性要優於 svn

git 的內容儲存使用的是 sha-1 雜湊演算法。這能確保**內容的完整性,確保在遇到磁碟故障和網路問題時降低對版本庫的破壞。

git存在特殊的遠端提交

對集中式版本控制系統svn來說,所以並沒有遠端提交的概念,它對檔案每一次增加、修改、刪除操作如果提交到**倉庫都要進行commit操作,而git有本地倉庫和遠端倉庫的概念,每一次commit的操作其實只是提交到了本地倉庫,如果提交到遠端倉庫需要執行git push操作。

一般工作流程如下:

git本地有四個工作區域:工作目錄(working directory)、暫存區(stage/index)、資源庫(repository或git directory)、git倉庫(remote directory)

概念分支是為了將修改記錄的整體流程分叉儲存。分叉後的分支不受其他分支的影響,所以在同乙個資料庫裡可以同時進行多個修改,使用分支的目的是一旦出現新的bug或者業務修改,就需要從開發主線上分離開來,然後在不影響主線的同時繼續工作。

(後面再補充)

我們只需使它初始化,使用當前目錄作為git倉庫,在執行完成git init命令後,git 倉庫會生成乙個 .git 目錄,該目錄包含了資源的所有元資料。

git init
新建乙個目錄newrepo,將其初始化為git**庫

git init newrepo
#從指定倉庫clone專案

git clone url

#從指定倉庫clone專案到指定目錄

git clone url

新增檔案,將檔案從工作區新增到暫存區

#新增指定檔案或者目錄

git add [file]

/[dir]

#新增目錄下的全部檔案

git add .

將檔案從快取區移除

#刪除暫存區或分支上的檔案,工作區也將刪除

git rm file

#強制刪除

git rm -f file

#如果把檔案從暫存區域移除,但仍然希望保留在當前工作目錄中

git rm --cached file

從暫存區新增到版本庫

#從暫存區新增到版本庫

git commit -m '版本更新說明'

#移除不必要的新增到暫存區的檔案

git reset head 檔名

#去掉上一次的提交(會直接變成add之前狀態)

git reset head^

#去掉上一次的提交(變成add之後,commit之前狀態)

git reset --soft head^

從遠端倉庫拉取

git push
向遠端倉庫推送

git push
關聯遠端倉庫

git romote url
檢視檔案狀態

git status file

git status

git使用入門

入門 4 git rebase 入門 6 git checkout 和git branch分支的建立和刪除 其實我一直都沒有能夠很好的使用git這個 管理工具。作為開源專案必須學會使用的工具。因此不得不寫下一些東西來記錄。1.初始化乙個空的git倉庫 caotaiqiang server1 mkdi...

git使用 入門

一 git安裝 1.ubuntu debian安裝git sudo apt get install git core 二 git配置 1.配置使用者名稱 git config global user.name lixinglei 2.配置郵箱 git config global user.email...

Git使用入門

最近在修改mybatis generator的外掛程式,讓自動生成的 更滿足符合開發的要求,因為是業餘研究,經常需要下班後在自己電腦上來繼續之前的工作,之前的狀態是下班之前把在公司的電腦上寫的 拷到u盤,回去之後再把 拷到自己電腦中替換掉之前的,某些特定情況的資料 如 資料庫連線資訊等 還需要根據環...