Git和SVN的區別,Git的使用方法大全


什么是Git:

Git 是一個開源的分布式版本控制系統,用于敏捷高效地處理任何或小或大的項目。

Git 是 Linus Torvalds 為了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟件。

Git 與常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本庫的方式,不必服務器端軟件支持。

Git 與 SVN
Git 不僅僅是個版本控制系統,它也是個內容管理系統(CMS),工作管理系統等。

如果你是一個具有使用 SVN 背景的人,你需要做一定的思想轉換,來適應 Git 提供的一些概念和特征。


Git 與 SVN 區別點:

1、Git 是分布式的,SVN 不是:這是 Git 和其它非分布式的版本控制系統,例如 SVN,CVS 等,最核心的區別。

2、Git 把內容按元數據方式存儲,而 SVN 是按文件:所有的資源控制系統都是把文件的元信息隱藏在一個類似 .svn、.cvs 等的文件夾里。

3、Git 分支和 SVN 的分支不同:分支在 SVN 中一點都不特別,其實它就是版本庫中的另外一個目錄。

4、Git 沒有一個全局的版本號,而 SVN 有:目前為止這是跟 SVN 相比 Git 缺少的最大的一個特征。

5、Git 的內容完整性要優于 SVN:Git 的內容存儲使用的是 SHA-1 哈希算法。這能確保代碼內容的完整性,確保在遇到磁盤故障和網絡問題時降低對版本庫的破壞。
在這里插入圖片描述


Git使用教程

一,新建倉庫(repository)。
可以使用一個已經存在的目錄作為Git倉庫或者創建一個空目錄。
使用當前目錄,初始化git init
使用指定目錄,git init newrepo

二,添加新文件
git add filename
方法一 git add 添加多個文件,文件之間以空格隔開
方法二 多次git add
方法三 添加指定目錄下的文件
config目錄下及子目錄下所有文件,home目錄下的所有.php文件

git config/*
git home/*.php	git add -A: 提交所有變化 【A 意思為all 所有】在用之前,先git pull 一下最新代碼
git add -u: 提交被修改(modifyed)和被刪除(deleted)的文件 不包含新(new)文件 【u 意思為 update】 
git add .: 提交被修改(modifyed)和被新建(new)的文件 不包含刪除(deleted)

三,提交版本
git commit 提交到版本庫
git add 目的是將修改文件由工作區提交到暫存區,可以多次提交
然后commit操作,將文件從暫存區提交到版本庫

git commit -m "add new file"	如果您不使用-m,會出現編輯器來讓你寫自己的注釋信息。當我們修改了很多文件,而不想每一個都add,想commit自動來提交本地修改,我們可以使用-a標識。git commit -a -m "Changed some files"
git commit 命令的-a選項可將所有被修改或者已刪除的且已經被git管理的文檔提交到倉庫中。(千萬注意,-a不會造成新文件被提交,只能修改。)	

四,發布版本
先從服務器克隆一個庫并上傳
git clone ssh://example.com/~/www/project.git

現在我們修改之后可以進行推送到服務器。
git push ssh://example.com/~/www/project.git	

五,取回更新
如果您已經按上面的進行push,下面命令表示,當前分支自動與唯一一個追蹤分支進行合并。

git pull
從非默認位置更新到指定的url。git pull http://git.example.com/project.git

六,刪除
如何你想從資源庫中刪除文件,我們使用rm。
git rm file

七,分支與合并
分支在本地完成,速度快。要創建一個新的分支,我們使用branch命令。
git branch test
branch命令不會將我們帶入分支,只是創建一個新分支。所以我們使用checkout命令來更改分支。
git checkout master
git merge test
如果想刪除分支,使用-d標識。
git branch -d test


圖片及文檔來自菜鳥-點此鏈接了解其它

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/449165.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/449165.shtml
英文地址,請注明出處:http://en.pswp.cn/news/449165.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

詳解 springboot - 查看、修改內置 tomcat 版本

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1、解析Spring Boot父級依賴 ?123456<parent> <groupId>org.springframework.boot</groupId> <artifactId>sp…

做生意的技巧 年入百萬不是夢(圖)

先介紹一下背景&#xff1a;這個表弟是土妖親大姨家的&#xff0c;從小不愛學習&#xff0c;但是腦子活絡。 現在在江蘇省泰州市姜堰區的一個農貿市場&#xff0c;開一個小餐館。餐館面積50多平米&#xff0c;年收入120萬左右。 少即是多——“我的小飯店只賣25種菜” 表弟…

reboot重啟失敗的解決方法

今天突然碰到用reboot命令不能重啟&#xff0c;上網找原因&#xff1a; reboot不能重啟可能是內核正在執行一些進程&#xff0c;reboot發送的信號被阻塞了&#xff0c;估計等一會內核從內核空間跳到用戶空間的時候&#xff0c;發現有信號被阻塞了&#xff0c;再執行這個阻塞的信…

BUAA-OO 第二單元作業“電梯調度”總結與思考

一、需求分析 利用java線程的相關知識實現 1&#xff09;單部多線程傻瓜調度&#xff08;FAFS&#xff09;電梯 2&#xff09;單部多線程可捎帶調度&#xff08;ALS&#xff09;電梯 3&#xff09;多部多線程智能&#xff08;SS&#xff09;調度電梯 二、思路分析 1、基于度量的…

解決報錯 javax.persistence.TransactionRequiredException: Executing an update/delete query

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 報錯如題。 場景是我想要執行一條很簡單的刪除語句。 JPA方式中使用本地sql , 寫法如下&#xff1a; ModifyingQuery("delete fr…

linux基礎知識點總結-最實用!(環境搭建,系統分區,常用命令,vim文本)

Linux系統介紹&#xff1a; Linux管理硬盤的能力非常強&#xff0c;所以我們看到的只有一個分區。 / 根目錄&#xff0c;所有文件都存儲在它下面 /bin 存儲著系統命令 /dev 設備文件&#xff08;一切皆文件&#xff09; /home 用戶主目錄&#xff0c;會自動生成用戶同名目錄 /…

遞歸實現進制轉換(C++版)

上次呢&#xff0c;我們留下了一道題&#xff0c;今天我們來一起看一看&#xff1a; 題目鏈接&#xff1a;https://www.cnblogs.com/gaozirong/p/10547434.html 這是我寫的程序&#xff0c;大家可以對照參考一下&#xff08;C&#xff09;&#xff1a; #include<bits/stdc.h…

解決 mysql 插入數據報錯: Cannot add or update a child row: a foreign key constraint fails

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 場景&#xff1a;我的情況是主表為用戶 user 表&#xff0c;從表為職位 job 表&#xff0c;其中 job 表有一個外鍵為 user 表的主鍵。 …

猶太人從未透露的12個秘密(圖)

中國人喜歡攢錢&#xff0c;西方人熱衷花錢&#xff0c;只有猶太人精于賺錢。 他們認為&#xff1a;唯有運用智慧賺錢&#xff0c;才是真正的致富之道。他們的經商智慧風靡全球&#xff0c;造就了無數的商業巨子。本文通過解讀猶太人精妙絕倫的經商之道&#xff0c;從人性、道…

vim文本編輯器的配置vimrc

在行底模式下對vim的設置只是臨時有效&#xff0c;如果想長期有效需要把這些設置語句寫入配置文件(~/.vimrc)中。 打開vim的配置&#xff1a;vim ~/.vimrc 進行編輯&#xff1a; " 顯示行號 set number" tab鍵寬度 set tabstop4" 設置自動縮進 set autoindent…

IDEA 錯誤:找不到或無法加載主類

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 從昨天開始使用IDEA開始就一直在搭建java環境&#xff0c;許久沒有使用過java&#xff0c;剛開始有些生疏&#xff0c;先建了一個最簡單…

Android 第一篇

在Android的世界里以一只萌級小菜鳥的身份起飛&#xff0c;在后面的路途中不斷的成長。轉載于:https://www.cnblogs.com/ming-michelle/p/10558328.html

如何吸引財富呢?請做這六件事吧!

一&#xff1a;投資你的債務 有一則故事到處流傳&#xff1a;當聲名浪藉的威利被問到為什么要搶劫銀行時&#xff0c;他回答道&#xff1a;“因為這里有錢。”威利可能是個惡棍&#xff0c;但不是個笨蛋。他選對了目標。不過如能夠到銀行里投資&#xff0c;而不是到這里搶劫&am…

vscode解決中文亂碼

打開文件時出現亂碼 文件->首選項->設置&#xff0c;然后在右邊用戶設置里打開settings.json &#xff0c;輸入&#xff1a; “files.autoGuessEncoding”: true, CtrlS保存一下&#xff0c;就搞定了&#xff01; 沒有做很大的修改&#xff0c;可以正常使用就行 {&qu…

Centos 7源碼編譯搭建Nginx

一、Nginx入門介紹 1. Nginx&#xff08;engine x&#xff09;&#xff1a;[?end??nks] 2. Nginx 是 Igor Sysoev 為俄羅斯訪問量第二的 Rambler.ru 站點開發的&#xff0c;第一個公開版發布于2014年10月4日 3. 主要功能 1&#xff09;HTTP 服務器&#xff08;包含動靜分離…

數據備份、pymysql模塊

----------mysql數據備份------------- #1. 物理備份&#xff1a; 直接復制數據庫文件&#xff0c;適用于大型數據庫環境。但不能恢復到異構系統中如Windows。 #2. 邏輯備份&#xff1a; 備份的是建表、建庫、插入等操作所執行SQL語句&#xff0c;適用于中小型數據庫&#xff0…

優雅的找出ArrayList中重復的元素

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 方法1 代碼&#xff1a; public class Main { public static void main(String[] args){ List<String> list new ArrayList&…

全球通吃的九大黃金專業

出國留學的同學在選專業時尤其搖擺不定&#xff0c;選擇時需要根據以后的就業發展來挑選適合自己的專業。專業選擇得當與否&#xff0c;決定著留學生回國發展是否順利&#xff0c;決定著巨額投資是否物有所值&#xff0c;以下九類比較有發展潛力的黃金留學專業&#xff0c;供大…

C語言里最基礎的關鍵字

內建類型&#xff1a; void、char、short、int、long、float、double 自建類型&#xff1a; struct、union、enum、sizeof 類型限定符&#xff1a; auto、const、static、volatile、register、extern、typedef、signed、unsigned 分支&#xff1a; if、else、switch、case、def…

mysql 行轉列 (結果集以坐標顯示)

create table capacity(type int ,numbers int ,monthst INT ); select type, sum(case monthst when 1 then numbers else 0 end ) 一月, sum(case monthst when 2 then numbers else 0 end ) 二月, sum(case monthst when 3 then numbers else 0 end ) 三月, sum(case months…