java編程——git分布式版本控制系統常用的操作

Git簡介

Git屬於 分散型版本管理系統,是為版本管理而設計的軟件。

Linux的創始人Linus Torvalds在2005年開發了Git的原型程序。當時,由於在Linux內核開發中使用的既有版本管理系統的開發方許可證發生了變更,為了更換新的版本管理系統,Torvalds開發了Git。

什麼是版本管理

版本管理就是管理更新的歷史記錄。它為我們提供了一些在軟件開發過程中必不可少的功能,例如記錄一款軟件添加或更改源代碼的過程,回滾到特定階段,恢復誤刪除的文件等。

在Git出現以前,人們普遍採用Subversion等 集中型版本管理系統,而現在Git已成為主流。

一、從遠程倉庫中下載到本地

這個就是說我在遠程服務器(或者是GitHub上公開的項目)的有一個項目,並且該項目是放在了類似GitHub的版本控制系統上,例如我們自己在一個遠程的Linux上搭建了GitLab服務然後供大家使用(GitHub是免費的公開的項目分享,可以搭建私有的庫,但是私有庫是收費的,所以一般大家自己有服務器就在自己服務器上安裝一個GitLab服務就好了)。現在GitHub或者是我們自己的GitLab上有個項目,並且我們也是有權限訪問的,那麼這小節介紹的就是如何把遠程項目導入到本地。

1.1、首先打開git的界面(一般git都是用命令操作比較多,安裝好git之後,打開git.bash就可以了)之後設置一下全局變量(也就是你訪問git時候的用戶名和郵箱了),如果是公開的項目可以省略這一步。

1. git config --global user.name "dufei"

2. git config --global user.email "[email protected]"

1.2、進入你想把項目存到本地的位置,比如我想存到本地D盤的GitTest文件夾中,那就使用Git.bash進入到這個文件夾(沒有就創建一個),然後執行"git init"初始化這個文件夾(也就是在這個文件夾下創建一個.git文件夾,將一些配置信息放進來)

1. cd d:/gittest

2. git init

如下圖所示

java編程——git分佈式版本控制系統常用的操作

1.3、找到你想克隆到本地項目的遠程倉庫地址,例如我想從GitHub上拷貝我的WebTemplate項目到本地,那麼就執行git clone命令:git clone 如下圖所示

java編程——git分佈式版本控制系統常用的操作

java編程——git分佈式版本控制系統常用的操作

接下來等一會這個項目就會克隆到本地了。查看一下本地就能看到這個項目了。接下來就可以基於這個項目進行開發了。

二、將本地已有項目分享到遠程倉庫中

這小節就是說你遠程已經建立了一個空的倉庫,現在需要把本地的某個項目分享到遠程的倉庫中。

2.1、打開終端,然後進入你項目所在的目錄,執行如下命令,對目錄初始化,這樣就會在這個項目的文件夾下多了.git文件夾了,和上面類似。

1. cd d:/gittest/WebTemplate

2.2、將當前項目下所有的文件添加到本地的git倉庫的暫存區(如果只想共享一部分,那就不用.,就把對應的文件或者文件夾列出來就行,這裡用add表示將當前文件放到暫存區,其實並沒有提交)

1. git add .

2.3、接下來提交暫存區文件到本地倉庫,使用git commit命令,後面-m表示message,意思是提交本次修改的信息。

1. git commit -m "inital commit"

2.4、將本地庫與遠程庫進行關聯,這時候假設你在遠程庫上已經有了一個倉庫,比如我的WebTemplate項目的遠程地址就是: ,那麼關聯操作命令如下:

1. git remote add origin https://github.com/df19900725/WebTemplate.git

這裡git remote表示對遠程倉庫的操作,origin是遠程倉庫本體(默認分支名稱),add表示將遠程的庫加入,也就是關聯的操作,接下來我們使用git remote -v命令查看關聯結果發現已經關聯上了:

1. git remote -v

如下圖所示

java編程——git分佈式版本控制系統常用的操作

2.5、最後把本地文件進行提交即可

1. git push origin master

git push表示提交代碼的意思,origin表示遠程的分支名稱,master表示本地分支名稱,上面代碼就是說把本地的master分支推送到遠程端,操作之後可以在遠程看到了。

三、從遠程倉庫更新本地文件

多人協作開發的時候,每次開發前第一步是從遠程將別人提交的修改更新到本地,因為如果你不更新直接編程會導致自己的版本號比遠程新,特別容易造成衝突。所以一般先更新再提交修改。從遠程更新時候第一步先查看一下遠程的分支情況,然後將指定的分支更新到本地。

3.1、查看遠程分支

如下圖所示

java編程——git分佈式版本控制系統常用的操作

我們看到遠程只有一個origin分支,那麼我們直接根據這個更新就可以了。

3.2、將遠程修改更新到本地

git fetch origin master

java編程——git分佈式版本控制系統常用的操作

前面說過origin是遠程倉庫分支,master是本地分支,所以這個命令就是將遠程分支更新到本地。

3.3、合併遠程與本地

1. git merge origin/master

遠程修改更新到本地之後要做merge操作才能看到最終修改。

java編程——git分佈式版本控制系統常用的操作

當然git fetch -> git merge 操作可以使用git pull代替。這樣只要執行一步就好了。

git pull

java編程——git分佈式版本控制系統常用的操作

四、將本地修改提交到遠程

提交本地修改到遠程三步,第一步是add文件,表示要提交修改的文件,第二步commit代碼到暫存區,第三步push代碼到遠程倉庫,其實在第一小節我們已經說過了。

1. git add README.md

2. git commit README.md 'test'

3. git push origin master

如果是提交GitHub之類的可能還要用戶名密碼登錄:

hellow wolrd! activecode

需要學習更多java相關知識請關注我,或者查看我的往期發佈哦

java編程——git分佈式版本控制系統常用的操作


分享到:


相關文章: