深度理解git版本控制

2021-10-01 14:56:10 字數 1021 閱讀 1598

什麼是git

git是乙個c語言編寫分布式版本控制系統。不需要**伺服器,不需要聯網

對應的是:集中式的版本控制系統是需要**伺服器的,版本庫是放在**伺服器的,而分布式的版本控制的優點就是沒有**伺服器,每個電腦都是乙個完整的版本庫。這樣,你工作的時候,就不需要聯網了,因為版本庫就在你自己的電腦上

類似系統cvs、svn、perforce都是集中式版本控制系統,分布式系統有git, mercurial、bazaar、darcs、fossil等

git管理的是檔案的修改,而不是檔案

所有的版本控制系統,其實只能跟蹤文字檔案的改動,比如txt檔案,網頁,所有的程式**等等,git也不例外。版本控制系統可以告訴你每次的改動。

所以git比其他版本控制系統設計得優秀,因為git跟蹤並管理的是修改,而非檔案。

為什麼git新增檔案需要add,commit一共兩步呢?

add是將修改提交到暫存區,commit是把暫存區的內容推送到**倉庫

因為commit可以一次提交很多檔案,所以你可以多次add不同的檔案 commit後面的引數-m是本次提交的說明,輸入說明對閱讀很重要

關於修改

第一次修改 -> git add -> 第二次修改 -> git add -> git commit

每次修改都要add到暫存區,最後才會commit

為了保證提交的原子性,讓提交顆粒度分明

工作區相當於你電腦的工程資料夾,裡面有乙個.git的隱藏目錄,是git的版本庫,版本庫包括兩部分,一部分是add後的暫存區,一部分是commit後的**倉庫

在git中,用head表示當前工作的分支,也就是最新的提交1094adb…,上乙個版本就是head^ (head後面有乙個^ ),上上乙個版本就是head^^,100版本寫成head~100。

Git版本控制理解(一)

一 集中式版本控制系統與分布式的區別 集中式 版本庫集中存放在 伺服器 即存放版本庫的伺服器 必須先從 伺服器取得最新版本的,處理完後再推送到 伺服器 如svn 缺點是必須聯網。分布式 沒有所謂的 伺服器 每乙個人的電腦就是乙個完整的版本庫,因此工作的時候不需要聯網。協作的時候只需要把各自的修改推送...

git版本控制

1.git 是乙個開源的分布式版本控制系統,可以有效 高速的處理從很小到非常大的專案版本 管理。2.git配置管理 一般,有乙個 集中庫,包含4個分支 qa才能merge production 發布生產,出現生產問題,轉hotfix 研發經理 hotfix 解決緊急生產問題,測試後轉producti...

版本控制 Git

git 是目前世界上最先進的開源的分布式版本控制系統 沒有之一 用於敏捷高效地處理任何或小或大的專案。git 是 linus torvalds 為了幫助管理 linux核心開發而開發的乙個開放原始碼的版本控制軟體。git 與常用的版本控制工具 cvs,subversion 等不同,它採用了分布式版本...