1. 程式人生 > >Git的基本使用及基本流程(平臺為GitHub)

Git的基本使用及基本流程(平臺為GitHub)

注意事項:文章裡面很多 - - 系統自動把他合成–了,操作時請注意。

一、Git基本概念

  1. Git是分散式的版本管理系統,每臺機器都可以基於遠端中心伺服器擁有自己的版本,如圖:
    這裡寫圖片描述
  2. 遠端中心伺服器一般叫做Origin repository。
  3. 下面來看一下本地計算機包含哪些內容,圖片來自於Git官網,包含三個區域:
    (1) 工作目錄(working Directory):我們肉眼能夠看到的目錄及相應的檔案;
    (2) 暫存區(Staging Area,也有叫Index):中間過渡區域,可以通過git add命令將工作目錄檔案放入該區域;
    (3) 版本庫(Repository):存放版本、分支、Commits的相關資訊,通過git commit命令將Staging Area區域的內容放在版本庫中;版本庫的資訊以檔案的形式存放在工作目錄下的.git隱藏資料夾中;
    這裡寫圖片描述

二、Git前期準備

  1. 找到GitHub中專案地址,點選Clone or download按鈕,獲取Clone地址
    這裡寫圖片描述
  2. 由於Clone是通過SSH進行傳送的,所以需要生成你機器的認證資訊,生成SSH 認證資訊,輸入如下程式碼,一路回車:
    [email protected]:~/workspace$ ssh-keygen -t rsa -b 4096 -C [email protected]
    完成後進入到儲存key的檔案:
    cat ~/.ssh/id_rsa.pub
    copy public key,放在GitHub – setting – SSH and GPG keys
  3. 開始Clone,clone前先確認專案存放位置,並進入到相應目錄:
    [email protected]:~/workspace$ git clone [email protected]:wankuiju/hello-world.git
    進行clone時會提示如下資訊,輸入yes,
    這裡寫圖片描述
  4. 專案clone完成後,自動建立專案資料夾,我們現在先進入到專案目錄:
    cd hello-world
    通過ls –al 可以看到專案目錄下存在一個.git的隱藏資料夾,就是我們剛才提到的用於存放當前工作空間的版本資訊。

三、不涉及到協作、分支等因素的純練習內容(不可用於實際專案)

  1. 只有在專案第一次從遠端下載到本地計算機時才採用clone方式,在後面我會介紹,專案已經存在的情況下,如何根據派發下來的任務進行分支相關的操作,這次暫且不說;
  2. 在當前專案目錄下新增一個檔名為test_add的檔案,此時我們先不碰觸遠端版本庫,只在本地計算機內玩耍,那麼如下圖:
    這裡寫圖片描述
    拿剛才我們新建的test_add檔案為例來看一下,檔案建立完成後:
    (1) git status看一下本地檔案狀態,其實git的說明已經非常清晰明瞭,平時如果出現問題認真看提示說明,就能解決一些問題,如下圖告訴我們這個新檔案還沒有被track,就是沒有和版本產生關係,可以通過git add filename,我一般使用 git add .來操作當前目錄下所有檔案:
    這裡寫圖片描述
    (2) git add 將test_add納入版本跟蹤,隨後再次git status,如下圖,檔案已經進入staging area:
    這裡寫圖片描述
    (3) git commit 將test_add納入本地版本庫,隨後執行git status 檢視狀態
    這裡寫圖片描述
    可以看到由於我的本地計算機第一次使用git commit,所以提示需要設定郵箱和使用者名稱(來至GitHub註冊資訊),按照提示操作,替換成你的資訊即可:
    這裡寫圖片描述
    (4) 到此,我們在本地玩的很痛快,下一步就需要和遠端倉庫進行互動了,通過git push將你的版本資訊提交到遠端倉庫(origin repository),我們當前操作的是master分支,一般開發過程中不會直接操作master的。
    這裡寫圖片描述

四、 模仿實際專案的操作

假設我們已經根據上一章的clone方法,將遠端倉庫(origin repository)中的專案下載本地(預設clone遠端的master分支),還有一點需要注意,我們一般不會直接在master主分支上進行專案操作,那怎麼辦,可以在遠端倉庫中基於master分支建立一個develop分支,用於開發工作。

1. git branch –all 檢視分支

檢視遠端版本庫和本地版本庫中的分支資訊,目前我本地只有一個分支,分支前面的“*”代表本地當前分支,遠端倉庫有兩個分支,並且遠端倉庫當前分支為origin/master(即 遠端倉庫中的/master分支):
這裡寫圖片描述

2. git branch develop建立develop分支

這裡寫圖片描述

3. git checkout develop切換到develop分支

我們一般使用git checkout –b develop 一條語句來實現建立和切換到指定分支的操作,此處是為了演示。
這裡寫圖片描述

4. 保證本地develop分支最新

通過執行git fetch(從遠端倉庫中拉取所有分支資訊到本地),git rebase origin/develop(將拉取的origin/develop的內容合併到本地當前分支),這樣就保證當前分支develop同步於遠端分支。

5. 基於本地develop建立你自己的開發分支

此處再次重申,建立你自己的開發分支一定要以develop為基礎。
我們通過git checkout -b feature/2來建立屬於我們自己的第一個開發分支(develop開發分支屬於大家的),其中“feature”一般為約定俗成的名字,“2”為專案組為你分配的Issues號碼,如下圖,暫時我們不管Issues操作,只需要知道你任務分支的編碼就可。
這裡寫圖片描述
這裡寫圖片描述

6. 進行你該乾的事情吧

真正屬於我們的開發分支已經建立完了,現在你可以為所欲為的修改你的程式碼了。

7. 將你修改的內容提交到本地版本庫

(1) 新增或修改完內容後通過git status檢視一下本地版本庫狀態
這裡寫圖片描述
(2) 按照提示,執行git add . (不要忘記後面的”.”哦) 添加當前工作目錄檔案到暫存區,如果想從暫存區回退到工作目錄,可以使用git reset,參考下圖
這裡寫圖片描述
(3) 執行git commit –m ‘close #2’命令將暫存區內容新增到本地倉庫,close #2為約定俗成的,即關閉我們當前分支的任務,這只是一個說明代表我們完成了該分支,如果關閉需要進行其他動作,在這,我需要說明一下commit提交方式,git commit -m ‘close #your branch number’①每次使用該語句都會在本地生成一份commit資訊,可以通過git log 檢視, git commit –amend –no-edit②使用該語句不會建立新的commit資訊,會在上一個commit基礎上進行覆蓋提交,當然,這些commit資訊會隨著後續push操作,將commit資訊隨著版本分支一同上傳到遠端repository,所以要根據自身專案情況決定(通常是第一次commit執行①,以後commit執行②):
這裡寫圖片描述

8. 再次保證你當前分支版本為最新的

通過執行git fetch -p(從遠端倉庫中拉取所有分支資訊到本地,-p就會在本地刪除遠端已經刪除的分支),git rebase origin/develop(將拉取的origin/develop的內容合併到本地當前分支),這樣就保證當前分支同步於遠端develop分支。

9. 將你的分支提交到遠端倉庫

通過執行git push origin feature/2將此分支提交到遠端倉庫,如果已經提交過,在保證你的版本庫最新的情況下執行git push origin feature/2 –f
這裡寫圖片描述

10. 將遠端倉庫中你的分支合併到遠端倉庫的develop中(origin/develop)

一般由管理員或開發經理負責,統一在github上進行操作。

11. 解決衝突

如果遠端倉庫的develop分支和我們修改了同一個檔案,在呼叫git rebase origin/develop
命令時就會存在衝突的情況,如下圖
這裡寫圖片描述
(1) 找到衝突檔案,並刪除衝突內容,主要是<<<<,==== ,>>>>三行的內容
這裡寫圖片描述
(2) 執行git add . 命令
(3) 執行git rebase –continue

12. 如何用本地版本庫檔案覆蓋工作目錄檔案

git checkout – bad_filename 可以指定分支,預設為當前分支

13. 將commit到本地版本庫的內容撤銷

通過git log找到要退回的sha(commit後面的一長串字元),記住一定是要退回的sha,不是當前的sha,執行git reset sha(commit後面的一長串字元)

相關推薦

Git基本使用基本流程(平臺GitHub)

注意事項:文章裡面很多 - - 系統自動把他合成–了,操作時請注意。 一、Git基本概念 Git是分散式的版本管理系統,每臺機器都可以基於遠端中心伺服器擁有自己的版本,如圖: 遠端中心伺服器一般叫做Origin repository。 下面來看一下本地

git安裝基本用法

directory .com http 安裝客戶端 direct 基本用法 git 鼠標右鍵 tortoise 安裝: 1先安裝客戶端,選擇默認路徑,直接下一步就可以了 2安裝圖形化客戶端,選擇默認路徑安裝完成 基本用法: 1同步coding上的文件   在桌面上點擊鼠標

Git 教程 1 git安裝基本命令

在Mac OS X上安裝Git    由於沒有Windows系統,也沒在Windows上安裝過git,所以只介紹mac的安裝。Windows小夥伴自行百度了。    第一是安裝homebrew,然後通過homebrew安裝Git,具體方法請參考homebrew的文件:ht

git 安裝基本配置

git 基本上來說是開發者必備工具了,在伺服器裡沒有 git 實在不太能說得過去。何況,沒有 git 的話,面向github程式設計 從何說起,如同一個程式設計師斷了左膀右臂。 你對流程熟悉後,只需要一分鐘便可以操作完成 原文地址: 伺服器 ssh key 以及 git 的配置 系列文章: 伺服器運維

在專案開發中常用的git命令使用流程

git的基本命令 下載&初始化 git clone //從遠端倉庫下載檔案 git init //在需要上傳的檔案下初始化倉庫 對檔案進行操作 git add <filename> //將資料夾下的所有檔案上傳到工作區 , *表示上傳所有 git com

本地上傳到github的兩種方法git的一些基本命令

目錄​​​​​​​ 方法一 方法二 基本命令 方法一 1.在github上先新建自己的 repository 2.新建之後是這樣的: 預設master分支,右側有 clone 或 download的地址,此時可以選擇下載,也可以利用git bash等工

Windows上的gitgithub部署基本使用方法

  1、介紹     Git是一個開源的分散式版本控制系統,可以有效、高速地處理從很小到非常大的專案版本管理。Git 是 Linus Torvalds 為了幫助管理 Linux 核心開發而開發的一個開放原始碼的版本控制軟體。     Git 與常用的版本控制工具 CVS, Subversion

Centos6.7或7.2系統中 github配置基本使用

github配置及基本使用1.安裝 yum install git git-gui 2.生成密鑰對 ssh-keygen -t rsa -C "github郵箱地址"1、首先要檢查key是不是已經存在,2、打開一個終端,並輸入以下命令:$ ls -al ~/.ssh如果

SpringMVC框架基本工作流程詳解

req isp 需要 用戶 數據呈現 工作流 esp servle 組件映射 傳統原生的JSP+Servlet在開發上過程上雖然簡單明了,JSP頁面傳遞數據到Servlet,Servlet整理數據(邏輯開發)或者從數據庫提取數據接著再轉發到JSP頁面上,但是其似乎只能止步於

Git基本命令 -- 基本工作流程 + 文件相關操作

-- 一個 命令執行 IT 每次 tro 有變 並且 -c 可以先找一個已經被git管理的項目, 我就使用這個項目吧: https://github.com/solenovex/ID3-Editor 基本工作流程 克隆以後呢, 進入該目錄查看一下狀態: 然後添加一

了解SpringMVC框架基本工作流程

adapter AD pri 頁面 解決 pos 普通 url 重定向 轉自:http://www.cnblogs.com/xxzhuang/p/5940709.html   傳統原生的JSP+Servlet在開發上過程上雖然簡單明了,JSP頁面傳遞數據到Servlet,S

centos7 修改網卡名eth0基本優化

blog vim null 修改網卡 row unzip span true soft 1 Centos7 修改網卡名及修改靜態ip[root@localhost ~]# cd /etc/sysconfig/network-scripts/[root@localhost n

kafka叢集Producer基本資料結構工作流程深入剖析-kafka 商業環境實戰

本套技術專欄是作者(秦凱新)平時工作的總結和昇華,通過從真實商業環境抽取案例進行總結和分享,並給出商業應用的調優建議和叢集環境容量規劃等內容,請持續關注本套部落格。期待加入IOT時代最具戰鬥力的團隊。QQ郵箱地址:[email protected],如有任何學術交流,可隨時聯絡

windows下安裝git基本配置

1. git安裝軟體下載地址https://gitforwindows.org/ 2. 下載完成後,點選.exe安裝路徑自己選擇,其他選項參考下圖 其他就一步一步點選next即可 3. 配置github的ssh金鑰: (1)開啟Git Bash檢視電腦上是

一、github註冊基本使用

1.進入官網,登入/註冊 https://github.com/ GitHub官方網站進行註冊 註冊完成:建立一個屬於自己的庫: 點選右上角的+號:建立自己的庫 new repository  只輸入repository name  其他預設

JAVA中鍵盤的錄入基本流程控制語句

鍵盤的錄入 導包: import java.util.Sanner; 建立鍵盤錄入物件: Scanner sc=new Scanner(System.in); 通過物件獲取資料 int x=sc.nextlnt(); 當然除了錄入整形可也以錄入其它資料型別。 流程控制語

git命令的基本使用流程

git命令的基本使用流程 前提:已經基本熟悉git的常用命令 1.提交專案 首先,在對專案進行完善後,如果想要將專案更新到github或是阿里code上去,先要使用 git add -A 這一命令的作用是將專案的修改全部新增至本地,意思就是儲存此次的所有修改。 然後使用 git c

linux上git的安裝基本操作

git安裝:yum -y install git git解除安裝:yum uninstall git git --bare init 06D/ 新建一個遠端倉庫 1. 新建一個遠端倉庫

小程序的目錄結構基本代碼編寫流程

頁面 tps 開發者 https 編輯 結構 info nbsp 16px 微信開發者工具下載:https://dldir1.qq.com/WechatWebDev/1.0.0/201812271/wechat_devtools_1.02.1812271_ia32.exe

爬蟲最基本的工作流程:內涵社群網站

網路爬蟲(又被稱為網頁蜘蛛,網路機器人)就是模擬客戶端傳送網路請求,接收請求響應,一種按照一定的規則,自動地抓取網際網路資訊的程式。 只要是瀏覽器能做的事情,原則上,爬蟲都能夠做 先來看一下最簡單的網路爬蟲百度Logo圖片提取: import requests r =