git版本控制(精)
個人常用
git pull git status git add -A . git status git commit -m "sandbox" -a git push git status git pull常用
下載代碼:git clone http://123.111.222.333/firarm/a123123.git特指分支拉代碼:git clone -b dev-sw http://111.222.333.444:555/python/666-v3.git建倉庫, 初始化Git倉庫:git init創建分支的同時切換到該分支上,命令如下:git checkout -b dev-zy創建分支:git branch [branch name]切換分支:git checkout [branch name]查看分支:git branch 查看所有分支:git branch -a 查看遠程分支:git branch -r將新分支推送到github:git push origin [branch name]例如:git push origin dev-zy刪除本地分支:git branch -d [branch name]例如:git branch -d gh-dev刪除github遠程分支:git push origin :[branch name]git push origin :gh-dev添加本地需要提交代碼:git add .例如:git add /abc刪除遠程文件: git rm 文件名例如:git rm README.mdgit commit -m "for test"提交本地代碼:git commit -m "add my code to new branchB"push 到git倉庫:git push origin [branch name]例如:git push origin dev-zy合并分支: 1. 先切換到要合并的分支:git checkout master 2. 如果是多人開發的話 需要把遠程master上的代碼pull下來:git pull origin master 3. 然后我們把dev分支的代碼合并到master上:git merge dev 4. 然后查看狀態及執行提交命令:git statusgit remote add assetscanner http://123.111.222.333/firarm/a123123.git ==== 添加地址(記得讓開上傳權限)git push assetscanner ===== 關聯git config user.name "zhangfei" ====== 添加身份 git config user.email "zhangfei@abc.cn" ====== 添加身份git pull ===== 更新倉庫git diff ===== 對比倉庫代碼git add 說明.txt ===== 把文件(這里指“說明.txt")納入暫存區(還沒有真正納入版本控制,需要再一步確認)git status =======查看暫存區狀態git commit -m '...' 提交納入倉庫(要寫原因所以要加 -m)====git commit -m "說明內容" git push -u origin master 提交新代碼注意:第一次提交需要先提交姓名和郵箱,否則會報錯git log ===== 查看提交日志git reset -- hard =====版本號碼(至少寫五位) 回到歷史版本號版本git reflog ======= 回到刪除的未來版本(過去將來時)git clone +url=====克隆到本地git checkout -b issue -1120 =======創建并切換到這個分支,即如果沒有分支會直接建立這個分支(常用)(實際項目中,每個人都要在自己的分支上工作,最后再合并到如果要在master上面合并分支,需要先切回到master**(master是默認的主目錄)**git merge +分支名字 =======合并分支git branch -d +分支名字======刪除分支(如果分支沒有合并不能刪除)git branch -D +分支名字====強制刪除(如果分支沒有合并要刪除可以使用)Git 如何刪除遠程服務器文件同時保留本地文件
git rm --cached -r back_file # back_file是文件夾 git commit "xxxx" git push分支學習
主分支:master,默認分支 新建分支: git branch 分支名 查看分支: git branch 切換分支: git checkout 分支名 (實際項目中,每個人都要在自己的分支上工作,最后再合并到如果要在master 上面合并分支,需要先切回到master(master是默認的主目錄)合并分支: git merge +分支名字 刪除分支:git branch -d +分支名 (如果分支沒有合并不能刪除) 強制刪除: git branch -D +分支名字 (如果分支沒有合并要刪除可以使用)一.Git是什么
一言以蔽之:版本控制工具。Git是目前世界上最先進的分布式版本控制系統(沒有之一)。
這個軟件用起來就應該像這個樣子,能記錄每次文件的改動
這樣,你就結束了手動管理多個“版本”的史前時代,進入到版本控制的20世紀。
二.Git發展史
cvs --svn
在2002年以前,世界各地的志愿者把源代碼文件通過diff的方式發給Linus,然后由Linus本人通過手工方式合并代碼!你也許會想,為什么Linus不把Linux代碼放到版本控制系系統呢?不是有CVS、SVN這些免費的版本控制系統嗎?因為Linus堅定地反對 CVS和SVN,這些集中式的版本控制系統不但速度慢,而且必須聯網才能使用。有一些商用的版本控制系統,雖然比CVS、SVN好用,但那是付費的,和 Linux的開源精神不符。
Linus花了兩周時間用C寫了一個分布式版本控制系統,這就是Git!一個月之內,Linux系統的源碼已經由Git管理了!Git迅速成為最流?的分布式版本控制系統,尤其是2008年,GitHub網站上線了,它為開源項目免費提供Git存儲,無數開源項目開始遷移到GitHub,包括jQuery,PHP,Ruby等等。
三.Git運行方式
1.集中式VS分布式
Linus一直痛恨的CVS及SVN都是集中式的版本控制系統,而Git是分布式版本控制
(1)集中式版本控制系統,
版本庫是集中存放在中央服務器的,你干活的時候,用的都是自己的電腦,所以要先從 中央服務器取得最新的版本,然后開始干
活,干完活了,再把自己的活推送給中央服 務器。中央服務器就好比是一個圖書館,你要改一本書,必須先從圖書館借出來,然后
回到家自己改,改完了,再放回圖書館。集中式版本控制系統最大的弊端就是必須聯網才能工作,如果在局域網內還好,速度夠快,可如果在互聯網上,遇到網速慢的話,可 能提交個10M的文件就需要5分鐘,這還不得把人給憋死啊。
(2)分布式版本控制系統
根本沒有“中央服務器”,每個?的電腦上都是一個完整的版本庫,這 樣,你工作的時候,就不需要聯網了,因為版本庫就在你自己的電腦上。既然每個認電腦上都有個完整的版 本庫,那多個人如何協作呢?比如說你在自己電腦上改了文件A,你的同事也在他的 電腦上改了文件A,這時,你們倆之間只需把各自的修改推送給對方,就可以互相看到 對方的修改了。和集中式版本控制系統相比,分布式版本控制系統的安全性要好很多,因為每個電腦里都有完整的版本庫,某個人的電腦壞掉了不要緊,而集中式版本控制 系統的中央服務器要是出了問題,所有人都沒法干活了
git運行方式如圖
2.工作區和暫存區
Git和其他版本控制系統如SVN的一個不同之處就是有暫存區的概念
工作區(Working Directory):就是你在電腦?能看到的目錄,
版本庫(Repository):工作區有個隱藏目錄“.git”,這個不算工作區,而是Git的版本
庫,Git的版本庫存了很多東西,其中最重要的就是稱為stage(或者叫index)的暫存區,還
有Git為我們主動創建的第一個分支master,以及指向master的一個指針叫HEAD。
我們把文件往Git版本庫中添加的時候,是分兩步執行的:
第一步是用“git add”把文件添加進去,實際上就是把文件修改添加到暫存區;
第二步 是用“git commit”提交更改,實際上就是把暫存區的所有內容提交到當前分支。因為我們創建Git版本庫時,Git主動為我們創建了唯一一個master分支,所以,現在commit就是往master分支上提交更改。你可以簡單理解為,需要提交的?件修改通 通放到暫存區,然后,一次性提交暫存區的所有修改
四.常用Git服務器
1.github==全球最大的開源網站
2.碼云==免費的,國內的
3.coding==國內的
五.安裝Git
1.Linux系統安裝Git
(1)方法一:yum安裝
yum search Git===查看是否有git如果有就下載
Git --version====查版本
下最新版本官網:git-scm.com
注意:默認yum install git?安裝的為git 1.7.1版本
coding上面讓要使用的git版本為1.8.0以上,而且這個版本clone的時候有錯,所以需要手動安裝git
(2)方式二:手動安裝git
? ? 1、安裝git依賴包
?? ??? ?yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
?? ?2、刪除已有的git
?? ??? ?yum remove git
?? ?3、下載git源碼
?? ??? ?wget https://www.kernel.org/pub/software/scm/git/git-2.8.3.tar.gz?
?? ??? ?tar -zxvf git-2.8.3.tar.gz
?? ??? ?cd git-2.8.3
?? ??? ?./configure prefix=/usr/local/git/
?? ??? ?make && make install
?? ?4、將git指令添加到bash中,添加到環境變量中
?? ??? ?vi /etc/bashrc
?? ??? ?在最后一行介入
?? ??? ?export PATH=$PATH:/usr/local/git/bin
?? ??? ?source /etc/bashrc ?即可
?? ??? ?git --version ? git已經安裝好,可以查看git版本
2.window中安裝
這里我們演示Win系統的安裝,暫不考慮Linux系統
下載安裝客戶端,安裝成功檢查是否安裝是否成功
方法一:桌面右擊鼠標出現git bash here
在界面中輸入git --version顯示版本
方法二:運行cmd中輸入git --version顯示版本
六、Git操作(以github網站為例)
1.注冊并登錄Github網站
常規注冊,注意一點需要郵箱認證,否則不能創建項目
2.Github上創建倉庫
(1)新建一個倉庫(Repositories),填寫項目名和項目說明,創建成功會生成一個網址
填寫好了內容之后,點擊下方的 create repository ,資源庫就創建成功。
3.獲取項目—從服務器(云端)獲取項目到本地
本地找一個文件夾存放文件,然后右鍵打開git執行下面代碼,可將自己或者別人項目拿到本地
git clone https地址====將倉庫克隆到本地
注意:【創建ssh密鑰】也可以在之前創建
創建的目的是為了保證安全性,只有具有密鑰的管理員才可上傳,其他人只可以下載
git中輸入指令可以生成密鑰===ssh-keygen,生成私鑰id_rsa和公鑰id_rsa.pub
(連續按4次回車即可,如果想指定文件夾可以在第一次回車后面添加存秘鑰的路徑)
此時在本地用戶下面的.ssh文件夾下(默認路徑)會生成公鑰和私鑰文件,私鑰id_rsa和公鑰id_rsa.pub
將公鑰粘貼到github賬戶中的setting下’'SSH and GPG keys ”
生成之后也可以刪除,再重新從本地生成。
將遠端倉庫添加到本地
git remote add origin +url地址**======關聯遠端倉庫(origin是默認的)
4.下拉項目更新本地
在本地看到服務器最新的代碼(更新修改情況)
git pull ==== 從服務器更新代碼
5.本地推送到服務器
先在本地實施版本控制,即創建版本庫,又叫倉庫(repository)
(1)創建倉庫(版本庫),選擇一個合適的位置創建一個空目錄
cd e:/gitfile # 切換到指定文件夾下 mkdir +文件名 #文件名和路用英文,文件編輯可用notepad++ cd 文件名這一步也可以直接在本地完成,手動新建文件夾
(2)進入目標文件夾(想推送的文件所在文件夾)
git init 初始化Git倉庫,將這個目錄可以變為倉庫 git add +文件名 添加指定文件 (或者git add . 添加所有文件)git status 查看當前狀態(3)提交文件
git commit -m "我寫的內容原因" (注意:提交原因必須寫,否則不能推送)(4)推送文件到服務器
git push +倉庫url 或者git push origin master // origin是項目默認名字 例如:git push https://github.com/code369/git-test在彈出的窗口中輸入賬號和密碼
【注意】:如果出現push報錯,可使用下列語句
git pull origin master --allow-unrelated-histories
七.配置免密碼推送
在網站上創建項目的時候會有兩種方式https和ssh
1、Linux中免密碼push和pull(使用https方式)
cd ~ vi .git-credentials在里面寫入 https://{username}:{password}@github.net git config --global credential.helper store2、windows系統中設置免密碼
windows下面的 ~ 就是這個目錄 C:\Users\用戶名 【注】在windows下面創建以點 開頭的文件,需要使用gitbash 打開gitbash 然后和上面的操作一模一樣,完成后只有第一次需要輸入密碼3、使用ssh方式免密碼登錄
使用 ssh-keygen 生成公鑰和私鑰,直接按3個回車即可 在 ~/.ssh/id_rsa.pub 里面的內容復制到coding上面的個人設置公鑰中 git clone git@git.coding.net:phpmonkey/hehe.git 即可八、沖突解決
a和b同時修改同一個文件的同一行代碼就會產生沖突,如果a先push,那么b在push的時候就會報錯。所以,為了保險起見,只要想向服務端push內容,首先需要pull內容,pull下來之后就會將服務端的代碼和本地的代碼進行合并,如果有沖突,就會顯示沖突(git diff),如果沒有沖突,那就合并成功,然后再push上去即可,如果有沖突,商量解決沖突即可
git pull 下拉文件 git diff 查看沖突九、分支學習
主分支:master,默認分支 新建分支: git branch 分支名 查看分支: git branch 切換分支: git checkout 分支名 (實際項目中,每個人都要在自己的分支上工作,最后再合并到如果要在master 上面合并分支,需要先切回到master(master是默認的主目錄)合并分支: git merge +分支名字 刪除分支:git branch -d +分支名 (如果分支沒有合并不能刪除) 強制刪除: git branch -D +分支名字 (如果分支沒有合并要刪除可以使用)十、開發步驟
一個master,一個dev
(1)新建一個dev (2)切換到dev進行開發 (3)在dev添加文件并且提交文件 (4)切換到master分支 (5)將dev分支合并到master分支git merge dev (6)推送master到服務端 (7)繼續切換到dev進行開發十一、git常用操作小總結
git init ===== 建倉庫, 初始化Git倉庫git add 說明.txt ===== 把文件(這里指“說明.txt")納入暫存區(還沒有真正納入版本控制,需要再一步確認)git status =======查看暫存區狀態git commit -m '...' 提交納入倉庫(要寫原因所以要加 -m)====git commit -m "說明內容"注意:第一次提交需要先提交姓名和郵箱,否則會報錯git log ===== 查看提交日志git checkout - - ====刪除文件還原:git reset -- hard =====版本號碼(至少寫五位) 回到歷史版本號版本git reflog ======= 回到刪除的未來版本(過去將來時)十二、兩個小案例
1.在Linux本地做版本控制
(1)在用戶主目錄創建文件夾,命名為gitdemo====mkdir gitdemo
進入文件夾cd gitdemo--->ls查看 [root@izwz9ao2nl8wvmgaymeyr0z ~]# mkdir gitdemo [root@izwz9ao2nl8wvmgaymeyr0z ~]# ls abc def eakkkk.txt git-2.18.0.tar index.html mycal.py Python-3.6.5 code dump.rdb git-2.18.0 gitdemo index.html.1 mysql Python-3.6.5.tar(2) git初始化,將gitdemo文件夾變成git倉庫==git init
[root@izwz9ao2nl8wvmgaymeyr0z ~]# git init(3)創建一個文本文件,命名為hello.txt,放入內容==echo命令,用 >進行重定向
echo"Hello,Git" > “hello.txt” 注意:輸出重定向符號 >
=====將Hello,Git內容顯示在hello.txt文件中,再次輸出內容 不變
查看文件寫好了沒有 cat hello.txt
可以再追加一點內容
echo "goodbey world" >> hello.txt(4)將內容納入版本控制===git add+文件名
[root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# git add hello.txt完成這一步并沒有真正的納入版本控制,只是放到了暫存區(是隱藏文件),
通過命令ls -a 可以 查看該路徑下所有文件(包括隱藏文件,a代表all),看到隱藏文件…git
[root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# ls -a . .. .git hello.txt【補充命令操作】
git rm --cashed +文件名?撤銷刪除文件( 內容已經放到暫存區了,把刪除的文件撤銷刪除,從暫存區拿回)
git checkout?– hello.txt 工作區寫的文件b還沒有放到暫存區,把暫存區文件a拿回來回到工作區,用暫行區內容a覆蓋工作區內容b(注意雙連接線兩側的空格)
[root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# rm hello.txt rm: remove regular file ‘hello.txt’? y [root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# ls 此時文件顯示為空 [root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# git checkout -- hello.txt [root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# ls 此時文件恢復回來 hello.txt[root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# cat hello.txt ==查看一下文本內容,也沒有丟失,重新恢復 Hello,Git goodbey World(5)提交到=====git commit -m?提交(-m的目的是要求寫原因)
[root@izwz9ao2nl8wv]# git commit -m "新增了hello.txt文件" 1 file changed, 2 insertions(+)create mode 100644 hello.txt 【注意】第一次提交前需要進行全局設置,用戶名和郵箱,名字任意 [root@izwz9aor0z gitdemo]# git config --global user.email "333@example.com" [root@izwzymeyr0z gitdemo]# git config --global user.name "hao"(6)【補充】–其他操作
每次提交會產生一個日志git log?====查看日志
[root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# git log commit 37e58587772d49119a14b68decc02ed155945d06 (HEAD -> master) Author: hao <333@example.com> Date: Mon Jul 30 09:47:47 2018 +0800新增了hello.txt文件查看歷史版本=======git reset --hard?+版本號(最少5位)可以找到歷史版本
方法二:**git reset --hard HEAD^**======回到當前版本的上一個版本【例】對這兩種方法演示
步驟a: 先復制一個文件,這利用之前的code文件下的share_fish為例注: Linux cp命令主要用于復制文件或目錄。
格式:?cp ./code/test/ newtest====將code目錄下的test文件復制到新目錄newtest
步驟d:查看日志git log,此時出現了兩個版本
[root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# git log commit f6fb32a62450153c7213cd408c1aa1851268715d (HEAD -> master) Author: hao <333@example.com> Date: Mon Jul 30 09:58:49 2018 +0800新增了share_fish.py文件commit 37e58587772d49119a14b68decc02ed155945d06 Author: hao <333@example.com> Date: Mon Jul 30 09:47:47 2018 +0800新增了hello.txt文件注意:最新的版本head指向誰誰就是最新版本
步驟e:回到剛才版本======git reset --hard HEAD^
[root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# git reset --hard HEAD^ HEAD is now at 37e5858 新增了hello.txt文件 [root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# git log commit 37e58587772d49119a14b68decc02ed155945d06 (HEAD -> master) Author: hao <333@example.com> Date: Mon Jul 30 09:47:47 2018 +0800新增了hello.txt文件注意;此時回到了之前的版本,想查看剛才的分魚文件用git log 查看不到,需要用過去將來式git reflog查看
[root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# git reflog 37e5858 (HEAD -> master) HEAD@{0}: reset: moving to HEAD^ f6fb32a HEAD@{1}: commit: 新增了share_fish.py文件 37e5858 (HEAD -> master) HEAD@{2}: commit (initial): 新增了hello.txt文件步驟f:現在想從目前為止恢復回來share_fish狀態,不能用git reset --hard HEAD^了,需要用歷史版本號,通過上面的代碼我們找到文件代碼為f6fb32a
[root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# git reset --hard f6fb32a HEAD is now at f6fb32a 新增了share_fish.py文件 [root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# ls hello.txt share_fish.py2.Linux本地和服務器項目做關聯(以coding網為例)
本地實施完想放到云端,(即本地做了版本控制,在云端建了項目)一般先在服務器將倉庫建好,然后再克隆clone下來,往里面加東西。
(1)登錄coding新建項目,命名為gitdemo;生成項目的URL,復制一下
(2)加遠端倉庫
【命令】git remote add origin +url地址======關聯遠端倉庫(origin是默認的)
root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# git remote add origin https://git.coding.net/qingpingle/gitdemo.git這樣本地和遠端項目建立聯系
(3)配置環境變量(否則會報錯):
進主目錄 ---->s輸入vim .bash profile
在path后面添加====PATH=$PATH:/usr/local/python36/bin/usr/local/libexec/git-core
(4)將遠端倉庫的內容pull到本地:
git pullhttps://git.coding.net/jackfrued/gitdemo.git master git pull =====從遠端的master分支拉下來將本地已經實施了版本控制的內容push到遠端倉庫:
【命令】git push origin master (注意第一次使用,需要-u,目的是為了本地和遠端做合并)**push -u (第一次要-u,這樣才能實現本地和遠端的合并,下一次就不用 - u了) [root@izwz9ao2nl8wvmgaymeyr0z gitdemo]# git push -u origin master Username for 'https://git.coding.net':(5)部署公鑰(coding項目中左側部署公鑰選擇,將生成的密鑰可粘貼進去)
【命令】ssh-keygen===生成密鑰對
輸入格式(注意空格和大小寫)=====ssh-keygen -t rsa -b 4096 -C"jackess@126.com"(郵箱地址)
注意: rsa(加密類型)
***4096(密碼的強度)** Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa already exists. Overwrite (y/n)? y Enter passphrase (empty for no passphrase): 這里輸入直接跳過 Enter same passphrase again: 跳過,一直回車,最后顯示出密鑰 Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: SHA256:gPbFDtmdioByI4S+E0tJL7PF3OyZXK9/1mZe5wxkAcs SSSDAD@126.com The key's randomart image is: +---[RSA 4096]----+ |.. . | |o. . . + . o o | |= O * + + o E . | | @ B = B . . | |. O o * S o | | = = . o | | . . . ...| | . o +.+.| | ..o +. o| +----[SHA256]-----+此時在 cd /root/.ssh中會生成文件id_rsa
root@izwz9ao2nl8wvmgaymeyr0z ~]# cd .ssh [root@izwz9ao2nl8wvmgaymeyr0z .ssh]# ls authorized_keys id_rsa id_rsa.pub known_hostscat id_rsa.pub
[root@izwz9ao2nl8wvmgaymeyr0z .ssh]# cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDerB2x/lVOBz5LjR+mhJpigcPXMSwHsiPdK81AKo7lagvP6250aNVoRTouhEaGtDg646CVTknXhF2L5nLMSLjCf3LwtOnu6/eI685LBJ/JCgyAdE73aBRR+mRLeQkRIAdPUy3oNOmnQ1UMX/TeJj3hBr+lDmxmNleSUle7TIl3hHDbQcNHTFnNgWAY4Qn/hujq6rp9fekd594YfuR8Ykd+tJjUHCteQElWRhSxckFQYbJ41d+XgugrVtO18PDZGEvkOTmimwzZylbwnCQDwbGiSDfXZZYuqNH0ZzyqJpyO9CUAh3GzVERuAsJM/f28VoyGRJQSwPivOXsVTgvGy/e4tDpYZ/BIcc03CArcxy8Ztvp2nJYXtca8EasDVwqXneB5nMQoYn2pJg5/SaPU+pPo+Nb4J6e1ea7WwcXjhgM3dpU3rhOko75ZPkX+RvaNH7jHrt5UXDO6uADKT7r9jnhhsznU41E+ifxXSZpg4nGS9DIKY2YyNUAiiQOpU0BsxrsZQTbue1gbbMN1/3CjkVTeX7nFVlBARpauQ3MSc8TwnFSm6CXnDbUfYkymzCzVAMJl7PhC6UQ8gHv4J+GychS/jkhbB2y9NPRTc1Bd6vG5anakRtG2DROOmVmFGQ0b9GegZ1FScL0MtNEwYsYqFrGQSeHp8opxVjsDeo6bOOI5Ww== SSSDAD@126.com將公鑰粘貼到coding項目中“部署公鑰”
(5)克隆到本地并建分支
在coding網新建項目gitflow
復制Url
git clone +url=====克隆到本地git branch new-cool-function(新分支名字) =====建分支,命名為new-cool-functiongit checkout new-cool-function(分支名字) ====== 切換到分支(這里分支名字為new-cool-function)git checkout -b issue -1120 =======創建并切換到這個分支,即如果沒有分支會直接建立這個分支(常用)(實際項目中,每個人都要在自己的分支上工作,最后再合并到如果要在master上面合并分支,需要先切回到master**(master是默認的主目錄)**git merge +分支名字 =======合并分支git branch -d +分支名字======刪除分支(如果分支沒有合并不能刪除)git branch -D +分支名字====強制刪除(如果分支沒有合并要刪除可以使用)總結
以上是生活随笔為你收集整理的git版本控制(精)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: nc个人实战使用总结
- 下一篇: CentOS7服务管理(重启,停止,自动