1. 程式人生 > >git安裝及使用教程

git安裝及使用教程

GitHub操作流程 :

第一次提交 :  

方案一 : 本地建立專案根目錄, 然後與遠端GitHub關聯, 之後的操作一樣;

-- 初始化Git倉庫 :git init ;

-- 提交改變到快取 :git commit -m 'description' ;

-- 本地git倉庫關聯GitHub倉庫 : git remote add origin [email protected]:han1202012/TabHost_Test.git ;

-- 提交到GitHub中 : git push -u origin master ;

方案二 方案二就是不用關聯GitHub倉庫, 直接從GitHub沖剋隆原始碼到本地, 專案根目錄也不用建立

;

-- 從GitHub上克隆專案到本地 :git clone [email protected]:han1202012/NDKHelloworld.git , 注意克隆的時候直接在倉庫根目錄即可, 不用再建立專案根目錄 ;

-- 新增檔案 :git add ./* , 將目錄中所有檔案新增;

-- 提交快取 :git commit -m '提交';

-- 提交到遠端GitHub倉庫 : git push -u origin master ;

之後修改提交 : 

-- 與GitHub遠端倉庫同步 :git pull ;

-- 檢視檔案變更 : git status ;

-- 提交程式碼到本地快取 : git commit -m 'description'

;

-- 提交程式碼到遠端GitHub倉庫 :git push ;

.gitignore用法 : 開放模式 註明忽略的檔案 直接列出檔名, 保守模式 註明保留的檔案 !檔名 ;

Git標籤操作 : 輕量級標籤, 帶註釋標籤;

--檢視標籤 :git tag ;

--新增標籤 : 輕量級標籤git tag tagName , 帶註釋標籤git tag -a tagName -m 'description' ;

--刪除標籤 :git tag -d tagName ;

--提交標籤到GitHub中 : git push origin --tags ;

Git分支操作: 建立分支後, 分支操作不會影響master分支, 但是master分支改變會影其它分支;

--列出分支 :git branch ;

--切換分支 :git checkout master ;

--提交分支 : git push origin branchName ;

--刪除分支 : git branch -d branchName , 強制刪除分支 git branch -D branchName ;

--合併分支 : git merge branchName ;

.

一. Git介紹

分散式 : Git版本控制系統是一個分散式的系統, 是用來儲存工程原始碼歷史狀態的命令列工具;

儲存點 : Git的儲存點可以追蹤原始碼中的檔案, 並能得到某一個時間點上的整個工程專案額狀態; 可以在該儲存點將多人提交的原始碼合併, 也可以會退到某一個儲存點上;

Git離線操作性 :Git可以離線進行程式碼提交, 因此它稱得上是完全的分散式處理, Git所有的操作不需要線上進行; 這意味著Git的速度要比SVN等工具快得多,  因為SVN等工具需要線上時才能操作, 如果網路環境不好, 提交程式碼會變得非常緩慢; 

Git基於快照 : SVN等老式版本控制工具是將提交點儲存成補丁檔案, Git提交是將提交點指向提交時的專案快照, 提交的東西包含一些元資料(作者, 日期, GPG等);

Git的分支和合並 : 分支模型是Git最顯著的特點, 因為這改變了開發者的開發模式, SVN等版本控制工具將每個分支都要放在不同的目錄中, Git可以在同一個目錄中切換不同的分支;

分支即時性 : 建立和切換分支幾乎是同時進行的, 使用者可以上傳一部分分支, 另外一部分分支可以隱藏在本地, 不必將所有的分支都上傳到GitHub中去;

分支靈活性 : 使用者可以隨時 建立 合併 刪除分支, 多人實現不同的功能, 可以建立多個分支進行開發, 之後進行分支合併, 這種方式使開發變得快速, 簡單, 安全;

二. Git通用客戶端(msysgit)

1. 下載Git客戶端

2. 安裝Git客戶端

歡迎介面 : 直接下一步;


協議 : 必須接受;


安裝位置 : 預留100M空間, 自定義安裝位置;


選擇安裝元件 :也可以預設選擇;

-- 圖示元件(Addition icons) : 選擇是否建立快速啟動欄圖示 或者 是否建立桌面快捷方式;

-- 桌面瀏覽(Windows Explorer integration) : 瀏覽原始碼的方法, 單獨的上下文瀏覽 只使用bash 或者 只用Git GUI工具; 高階的上下文瀏覽方法 使用git-cheetah plugin外掛;

-- 關聯配置檔案 : 是否關聯git配置檔案, 該配置檔案主要顯示文字編輯器的樣式;

-- 關聯shell指令碼檔案 : 是否關聯Bash命令列執行的指令碼檔案;

-- 使用TrueType編碼 : 在命令列中是否使用TruthType編碼, 該編碼是微軟和蘋果公司制定的通用編碼; 


開始選單快捷方式目錄 : 設定開始選單中快捷方式的目錄名稱, 也可以選擇不再開始選單中建立快捷方式;


設定環境變數 : 選擇使用什麼樣的命令列工具, 一般情況下我們預設使用Git Bash即可, 預設選擇;

-- Git自帶 : 使用Git自帶的Git Bash命令列工具;

-- 系統自帶CMD : 使用Windows系統的命令列工具;

-- 二者都有 : 上面二者同時配置, 但是注意, 這樣會將windows中的find.exe 和 sort.exe工具覆蓋, 如果不懂這些儘量不要選擇; 


選擇換行格式 : 

-- 檢查出windows格式轉換為unix格式 : 將windows格式的換行轉為unix格式的換行在進行提交;

-- 檢查出原來格式轉為unix格式 : 不管什麼格式的, 一律轉為unix格式的換行在進行提交;

-- 不進行格式轉換 : 不進行轉換, 檢查出什麼, 就提交什麼;


開始安裝 : 


安裝結束 : over;


3. 配置GitHub

修改Git Bash的配置 : 將Git Bash設定為快速編輯模式, 可以更好的使用該命令列工具 : 


(1) 建立本地ssh

使用命令 : 建立本地ssh

  1. ssh-keygen -t rsa -C "[email protected]"  
GitHub郵箱 : 該命令後面的郵箱就是GitHub的註冊郵箱

路徑選擇 : 使用該命令之後, 會出現提示選擇ssh-key生成路徑, 這裡直接點回車預設即可, 生成的ssh-key在預設路徑中;

密碼確認 : 這裡我們不使用密碼進行登入, 用密碼太麻煩;


(2) 將ssh配置到GitHub中 

進入生成的ssh目錄 : C:\Documents and Settings\Administrator\.ssh 中, 使用記事本開啟 id_rsa.pub 檔案, 將該檔案中的內容複製;

id_rsa.pub 檔案內容 : 

  1. ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAtT1YCeaNulpfC+ARqAWrCdfpi6CpW3gkGT0hp6Q8by7NnEfy4dah9CwSrNbWJH5eS4tiqckE+bdbSVNvAboFD1MtGZjtzE4GDweG/6J/SDYV/ADFN/RLWGb+5rQ8wMCjc/fODgLJDFxk1Fwk/TTqTcbtLab1toLcts3zGIW5DstA3RQ0CCX/sPew5m7vh7DcKXluj2TBd9hw== [email protected]  
進入GitHub網站 : 登入GitHub, 選擇Account Setting 使用者設定 : 


選擇左側的SSH-KEY選項 : 


點選右側的Add SSH key :

 

將上面複製好的ssh-key複製進去 : 


驗證是否配置成功 : 

使用命令 : 

  1. ssh -T [email protected]  

成功提示 : 如果出現Hi han1202012! You've successfully authenticated, but GitHub does not provide shell access. 就說明配置成功, 可以連線上GitHub;


(3) 配置本地使用者和郵箱

使用者名稱郵箱作用 : 我們需要設定一個使用者名稱 和 郵箱, 這是用來上傳本地倉庫到GitHub中, 在GitHub中顯示程式碼上傳者;

使用命令 : 

  1. git config --global user.name "HanShuliang"//設定使用者名稱
  2. git config --global user.email "[email protected]"//設定郵箱

4. Git Bash提交原始碼到GitHub

(1) GitHub中建立一個工程

工程的https地址: https://github.com/han1202012/TabHost_Test.git .

工程的SSH地址 : [email protected]:han1202012/TabHost_Test.git .

GitHub提示生成的命令 : 

-- Create a new repository on the command line : 

  1. touch README.md  
  2. git init  
  3. git add README.md  
  4. git commit -m "first commit"  
  5. git remote add origin [email protected]:han1202012/TabHost_Test.git  
  6. git push -u origin master  
-- Push an existing repository from the command line : 
  1. git remote add origin [email protected]:han1202012/TabHost_Test.git  
  2. git push -u origin master  

(2) 初始化git目錄

使用命令 : 

  1. git init  
如果不執行這條命令, 就會出現錯誤 : fatal: Not a git repository (or any of the parent directories): .git .

(3) 新增檔案

使用命令 : 

  1. git add ./*  
可能會報出一些警告, 不用理會 : 
  1. warning: LF will be replaced by CRLF in AndroidManifest.xml.  
  2. The file will have its original line endings in your working directory.  
  3. warning: LF will be replaced by CRLF in bin/AndroidManifest.xml.  
  4. The file will have its original line endings in your working directory.  
  5. warning: LF will be replaced by CRLF in gen/shuliang/han/tabhost_test/BuildConfig.java.  
將倉庫中的所有檔案新增到快取中;

(4) 提交快取

使用命令 : 

  1. git remote add origin [email protected]:han1202012/TabHost_Test.git  
將新增或者改變的內容提交到快取中;

(5) 將Git本地快取提交到GitHub中

使用命令 : 

  1. git push -u origin master  

執行該命令, 原始碼就被提交到了GitHub 中;

.

作者 :萬境絕塵 

.

三. Git的一些用法

1. .gitignore檔案

遮蔽檔案 : .gitignore檔案是告訴Git哪些目錄或者檔案需要忽略, 這些檔案將不被提交; 

常用場景 : 寫完程式碼後會執行變異除錯等操作, 使用 .gitignore 檔案將這些編譯後的檔案遮蔽, 這些檔案不需要Git工具進行管理;

Android中的.gitignore : 在Android中 bin 和 gen 兩個目錄可以忽略;

.gitignore位置 : 專案根目錄下;

過濾模式 : Git中的 .gitignore 中有兩種模式,開放模式 和保守模式,保守模式的優先順序要高於開放模式;

開放模式 : 設定哪些檔案 活 目錄 被過濾, 凡是在檔案中列出的檔案或者目錄都要被過濾掉;

-- 過濾目錄 : /bin/ 就是將bin目錄過濾, 該檔案下的所有目錄和檔案都不被提交;

-- 過濾某個型別檔案 : *.zip *.class 就是過濾zip 和 class 字尾的檔案, 這些檔案不被提交;

-- 過濾指定檔案 : /gen/R.Java, 過濾該檔案, 該檔案不被提交;

保守模式 : 設定哪些檔案不被過濾, 凡是列在其中的檔案都要完整的提交上去;

-- 跟蹤目錄 : !/src , 該目錄下的所有檔案都要被提交;

-- 跟蹤某類檔案 : !*.java , 凡是java檔案都要保留;

-- 跟蹤指定檔案 : !/AndroidManifest.xml , 該檔案需要保留, 提交上去;

配置原則 : 一般情況下采用開放模式魚保守模式共同使用;

eg : 一個目錄下有很多目錄和檔案, 當我們只需要保留其中的一個檔案的時候, 先用開放模式不保留這些檔案, 然後用保守模式將這個檔案留下來, 保守模式的優先順序要高於開放模式;

2. 標籤使用(Tag)

標籤作用: 在開發的一些關鍵時期,使用標籤來記錄這些關鍵時刻, 例如釋出版本, 有重大修改, 升級的時候, 會使用標籤記錄這些時刻, 來永久標記專案中的關鍵歷史時刻;

檢視標籤: 列出的標籤安裝ASCII字母順序確定, 排序沒有很明確的意義;

-- 列出所有的標籤 :  

  1. git tag  
-- 使用限定列出限定後的標籤 : 
  1. git tag -l v1.*  



標籤分類 : Git中的標籤分為 輕量級標籤(lightweight) 和 帶註釋的標籤(annotated), 一般情況下推薦使用帶註釋的標籤, 如果標籤是臨時的可以採用輕量級標籤;

-- 輕量級標籤 : 輕量級標籤中的資訊含量很少, 這種標籤只代表某時刻程式碼的提交, 相當於指向這個提交的指標;

-- 帶註釋標籤 : 這種標籤是一種校驗和, 包含標籤名, 郵箱, 日期, 標籤資訊, GPG簽名 和 驗證, 它相當於一個物件, 封裝了這些資訊;

建立標籤 :

-- 建立輕量級標籤 : 這樣的標籤沒有附帶其它的資訊;

  1. git tag v2.0  


-- 建立帶註釋標籤 : -m 後跟的是註釋資訊, 當使用git show v2.1的時候, 會顯示這個註釋資訊;
  1. git tag -a v2.1 -m 'first version'  

-- 建立GPG私鑰的註釋標籤 : 
  1. git tag -s v2.1 -m 'GPG version'  

在本機上實驗不成功 出現下面的錯誤 : 

  1. Administrator@XRDPTJ9ILK6IWRA /storage/TabHost_Test (master)  
  2. $ git tag -s v2.2 -m 'GPG version'  
  3. gpg: error loading `iconv.dll': 找不到指定的模組。  
  4. gpg: please see http://www.gnupg.org/download/iconv.html for more information  
  5. gpg: keyblock resource `c:/Documents and Settings/Administrator/.gnupg\secring.g  
  6. pg': file open error  
  7. gpg: keyblock resource `c:/Documents and Settings/Administrator/.gnupg\pubring.g  
  8. pg': file open error  
  9. gpg: skipped "HanShuliang <[email protected]>": secret key not available  
  10. gpg: signing failed: secret key not available  
  11. error: gpg failed to sign the data  
  12. error: unable to sign the tag  
以後再找原因;

-- 為之前的提交新增標籤 : 先使用 git log --oneline 命令列出之前的提交, 會有一個七位的十六進位制數進行標記, 使用git tag -a v3.1 f1bb97a 命令即可為這個提交新增標籤;

  1. $ git log --oneline  
  2. f1bb97a first commit  
  3. git tag -a v3.1 f1bb97a  


刪除標籤 : 使用命令 git tag -d 標籤名 命令刪除標籤;

  1. git tag -d v0.1  


驗證標籤 : 提交了GPG帶註釋標籤才可以驗證, 因為上面沒有提交成功, 這裡留下一個命令;

  1. git tag -v v1.0  


共享標籤 : 即將標籤提交到GitHub中;

  1. 相關推薦

    Git 教程 1 git安裝基本命令

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

    git安裝使用教程

    GitHub操作流程 :第一次提交 :  方案一 : 本地建立專案根目錄, 然後與遠端GitHub關聯, 之後的操作一樣;-- 初始化Git倉庫 :git init ;-- 提交改變到快取 :git commit -m 'description' ;-- 本地git倉庫關聯GitHub倉庫 : git rem

    GIT安裝詳細使用

    gitLinux安裝Git及詳細使用Git是目前世界上最先進的分布式版本控制系統。Git的與SVN最主要的區別 ,Git是分布式版本控制系統,那麽它就沒有中央服務器的,每個人的電腦就是一個完整的版本庫,只需把各 自的修改推送給對方;SVN是集中式版本控制系統,版本庫是集中放在中央服務器的,集中式版本控制系統是

    git安裝漢化

    gitlab 漢化 gitlab安裝:https://www.gitlab.com.cn/downloads/#centos7gitlab漢化包下載:https://gitlab.com/xhang/gitlab.git把下載下來的內容替換gitlab-rails目錄中的內容,然後啟動即可。/opt/

    Git 安裝查看/修改用戶名和郵箱

    git https 修改 for 下載 mail conf blank lob Git的下載: https://git-for-windows.github.io 設置/修改用戶名:git config --global user.name "name" 設置/修改郵箱:

    git安裝基本用法

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

    Git安裝生成SSH祕鑰

    一、Git下載及安裝 windows環境:下載安裝 GIT 執行檔案(地址——https://git-scm.com/downloads)。 Linux: # yum install git # 或者 # apt install git Mac: # b

    Git安裝配置

    官方文件 https://git-scm.com/book/zh/v2     git 10.0.0.200 jenkins 10.0.0.201   Git準備環境 getenforce yum install git [[email 

    ubuntu下安裝git安裝使用

    一、當前git已經成成為程式碼管理最受歡迎的工具之一,下面簡單說一下其使用。之前寫過一篇關於git關聯github的,可以檢視http://fuzhenwen.top:8000/article/22/preview 。    一般專案開發者,首先得把專案fork到自己的pro

    FinalShell Mac OS版,Linux版安裝教程(Mac下的xshell)

    使用者QQ群 342045988Mac版安裝路徑/Applications/finalshelldataLinux版安裝路徑/usr/lib/finalshelldata注意:1.FinalShell執行需要java或者jdk支援,java版本至少1.8,安裝後如果無法啟動,執行 java -version,

    git安裝使用

    參考網址:http://www.runoob.com/git/git-tutorial.html Git是一個開源的分散式版本控制系統,用於敏捷高效地處理任何或小或大的專案。 Git 與常用的版本控制工具 CVS, Subversion 等不同,它採用了分散式版

    Git安裝使用全過程

    今天想自己裝個git來管理原生代碼,沒想到從網站找了好久都沒有一個從頭到尾的過程,大都是安裝git客戶端或者就是安裝tortoiseGit的,然而沒有整合到一起,這樣是大家工作起來非常的費勁,為了記錄一下今天的研究成果和方便大家查閱,這裡就不多說了,直接上。。。。 我這裡給

    Linux下Git安裝配置較詳細

    1.下載git原始碼 目前最新版本下載地址:https://mirrors.edge.kernel.org/pub/software/scm/git/ --下載 :wget https://mirrors.edge.kernel.org/pub/software/scm/git/g

    Git 安裝配置

    首先下載GIT進行安裝,最好不要安裝在系統盤C盤裡,以免產生不必要的錯誤。 配置過程: 1.生成public key. 在git bash中執行C:\Program Files (x86)\Get\usr\bin\ssh-keygen.exe -t rsa 如下:

    Linux下Git安裝配置

    yum安裝版本可能較低 如果採用yum安裝git的方式:  yum install git  如果採用yum安裝了git需要先解除安裝:  yum remove git 原始碼安裝 安裝依賴的包  yum install curl-devel expat-deve

    centos7下git安裝使用

    一、git安裝 1.檢視系統是否已經安裝git git --version 2.CentOS7 yum 安裝git yum install git 3.安裝成功 y

    selenium+testng+gitblit+jenkins+ant自動化測試系列三:本地git安裝使用

    第一步:下載本地git檔案:Git_2.11.1.exe 第二步:安裝Git_2.11.1,一路點選next預設安裝即可,安裝目錄為D:\Program Files (x86)\Git。 第三步:把

    IntelliJ IDEA +git安裝配置

    一.IntelliJ IDEA安裝 從官網下載安裝包,按網上教程安裝即可,基本都是預設。。。。 二.git安裝 從網上下載安裝包,按照教程安裝即可。。。。。。 IntelliJ IDE

    centos7下git安裝使用(1)

    su git git clone git://github.com/sitaramc/gitolite mkdir -p $HOME/bin # 安裝gitolite gitolite/install -to $HOME/bin # 安裝時報錯,根據錯誤提示,百度了幾下,安裝相關的依賴 yum install

    git安裝初始化

    一、下載地址 二、安裝(Centos) 1.安裝curl,zlib,openssl,expat,libiconv等依賴工具 $ yum install curl-devel expat-devel gettext-devel \   openssl-devel zl