日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

git下载安装、验证、企业实战单机、多人协作

發布時間:2024/9/27 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 git下载安装、验证、企业实战单机、多人协作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

此課程會劃分為10個小結進行講述

  • 1 安裝和配置
  • 2 創建倉庫
  • 3 基本用法
  • 4 三種狀態
  • 5 標簽 tag
  • 6 分支 branch
  • 7 合并分支
  • 8 遠程倉庫
  • 9 如何多人遠程合作

git下載安裝驗證
一、下載、安裝、驗證
1、git官網:
https://git-scm.com/downloads

2、安裝及配置
2-1 一路下一步
2-2 驗證:在命令行輸入

2-3 配置git config --global(全局)、查看配置git config --list

git config --global user.name "用戶名" git config --global user.email "郵箱" git config --list

碼云配置方案:

git config --global user.name "gb_90" git config --global user.email "13396492261@63.com" git config --list

GitHub配置方案:

git config --global user.name "gb-heima" git config --global user.email "754263923@qq.com" git config --list

idea terminal設置(關鍵步驟):

查看版本:

3、在idea中初始化倉庫 創建倉庫(2種本地創建和遠程拉取)
3-1 初始化倉庫
方式1:進入目錄git init
創建test1目錄,進入test1執行git init:

mkdir test1 cd test1/ git init


方式2:git init 目錄名

cd .. git init test2


查看初始化倉庫文件:

cd test2 ls -la


方式3,遠程拉取
git clone +遠程倉庫地址(例如:https://github.com/biaoyansu/15.x.git)

git clone git@gitee.com:gb_90/gblfy.git



備注:遠程項目重命名
git clone +遠程倉庫地址 + 項目新的名稱

git clone git@gitee.com:gb_90/gblfy.git test3



這樣就把遠程倉庫的名稱更新為test3了,內容不改變

查看目錄下的文件
windows:dir

dir


linux:ll 或者ls -a 顯示所有文件包括隱藏

ls -la


二、基本用法:
1、編碼設置:
提交信息編碼

git config --global i18n.commitencoding utf-8


輸出log輸出的編碼

git config --global i18n.logoutputencoding utf-8 export LESSCHARSET=utf-8


查看設置的信息:

git config --list



2、查看倉庫狀態: git status
創建gblfy目錄->>>j進入目錄->>>初始化git倉庫->>>查看倉庫狀態->>>未新增新文件

cd gblfy/ git init git status


3、將所有修改添加到暫存區: git add .
創建gblfy目錄->>>j進入目錄->>>初始化git倉庫->>>查看倉庫狀態->>>新增gblfy.txt新文件->>>添加內容”gblfy文件第一次提交,添加內容”

git add .


4、提交版本: git commit -am “描述內容”

git commit -m”gblfy文件第一次秀,添加內容”


5、查看版本記錄: git log

git log


6、穿越到制定的歷史節點 git checkout xxx
在gblfy.txt->>>添加”穿越歷史節點第一次測試”->>>將gblfy.txt添加至暫存區->>>將gblfy.txt從至暫存區提交到本地倉庫

git add . git commit -m”穿越歷史節點,第一次測試”


查看提交的記錄:

git log


穿越歷史節點前:

git checkout 5db6e7c9


穿越歷史節點后:

備注:制作后悔藥流程(3步走)

1、修改內容 2、git add . 將本次修改的文件,添加至暫存區 3、git commit -am"本次修改的文件內容"


git add . git commit -m”演示制作互毆會要流程3步走”
回到剛才編輯的版本 git checkout -

git checkout -


三種狀態
modified已修改
stated已暫存
commited已提交
1、git節點組成基本3個階段:
modify(修改文件)
git add . 添加到暫存區
git commit -am “描述提交內容”
案例:
在gblfy.txt 文件中+A

查看文件狀態:
git status

將文件添加至暫存區

git add .


將gblfy.txt(新增A)文件提交到本地倉庫:

git commit -m”gblfy.txt文件+A測試”


3、查看版本記錄+修改的內容 git log -p

git add . git commit -m”gblfy.txt文件 add ABCD”



4、案例——對于一個文件修改多次:

例如:新建1.txt->>>>在1.txt中,添加了A ->>>>將A添加至暫存區:

touch 1.txt


git add 1.txt


git add 1.txt 在未提交之前,又添加了B

進行提交:
git commit -m”未提交之前,添加B倉庫只有A,沒有B”


這種情況,倉庫里git add 1.txt中只有內容A,原因是,添加B操作后,沒有將B添加到暫存區
之后,又一次添加了C 和D

git status


針對一個文件修改多次這種情況,可以依次添加到暫存區,最后,一起提交:

git commit -m”將BCD添加至暫存區,一起提交”



總結:后悔藥要經過3個階段
modify(修改文件)
git add . 添加到暫存區
git commit -am “描述提交內容”
四、標簽tag
新建test目->>>初始化git本地倉庫->>>新建2.txt->>>將添加暫存區->>>并提交到本地倉庫:

mkdir test


cd test/ git init

touch 2.txt git add .

git commit -m”初始化倉庫”


1、查看版本信息前一條信息:git log --oneline --decorate

git log --oneline --decorate


附注標簽:
git tag -a 標簽名 -m “備注”

git tag -a v1.0 -m”第一版完成”


2、列出所有標簽(git tag)

git log --oneline

git tag


3、打標簽一般以最近的節點打標簽,如果選擇一個歷史節點打標簽操作如下:
案例演示1:
提交3次,第一次和第三次分別建立標簽v1.0 v2.0,這是情況是:
提交3次
有v1.0 v2.0 二個標簽
進行以下操作:
在v2.0節點上,回到第二次提交的節點(通過id號),建立標簽,之后,返回v2.0節點,查看所有標簽
有v1.0 v1.5 v2.0 三個標簽
在上面的第一個標簽的基礎上開始演示:
第一步:在test本地倉庫下2.txt文件中添加”開始寫第二版書籍”內容

第二步:將2.txt文件添加在暫存區,并提交到本地倉庫

git add . git commit -m”測試穿越歷史節點添加標簽01”


第三步:在test本地倉庫下2.txt文件中添加”第二版書籍中期”內容

第四步:將2.txt文件添加在暫存區,并提交到本地倉庫:

git add . git commit -m”測試穿越歷史節點添加標簽02”


第五步:在第三次提交的基礎上,建立標簽v2.0

git tag -a v2.0 -m”在第二版中期,新建標簽v2..0”


查看所有標簽:

git tag


查看歷史記錄

git log --oneline


第六步:回到9834743節點

git checkout 9834743


回到9834743節點后,的文件顯示的內容

第七步:在9834743節點上新增標簽v1.5

git tag -a v1.5 -m”在第二版中期,回到9834743這個歷史節點的新增標簽v1.5”

第八步:回到v2.0節點

git checkout cd3bfe


回到v2.0節點后文件顯示的內容:

查看所有標簽:

git tag


案例完成!!!
簡單方法:

git tag -a 標簽 -am “描述階段內容” +歷史節點號

例如:

git tag -a v0.5 -m”歷史節點添加tag” 801be2a


案例演示2:
在上面基礎上,提交兩次:

git add . git commit -m”給歷史節點添加標簽01”


git add . git commit -m “給歷史節點添加標簽02”

git tag -a v3.0 -m”測試穿越歷史節點添加標簽03”

git log --oneline

git tag -a v2.5 -m”給歷史節點添加tag” ac1f4be git log --oneline


列出所有tag:

git tag


4、查看某個標簽的詳細信息:git show 標簽名

git show v2.0


5、回溯至標簽所在的提交:git checkout 標簽名
查看有哪些標簽和現在所在標簽:

git tag

git checkout v2.0


五、分支branch(默認分支master)
就是在主分支master上面,分出的幾條分支。
例如:一本書,主線是主人公不是富有的,在主線上分出一條故事劇情發展線,主人公變更富有的。
分支名稱可以自定義,就好像在不同分支平行的事件,可以隨意切換,非常方便。

git init test

cd test/ touch gblfy.txt


git add . git commit -m”第一章”


git add . git commit -m”第二章”


現在master節點有2個節點
查看有哪些節點?

git log --oneline


git add .

git commit -m”主人公not rich”


提交之后查看節點:

git log --oneline


創建分支:git branch 分支名:

git checkout rich

git log --oneline --all

git add . git commit -m”在rich分支上修改gblfy.txt”

git log --oneline --all


git add . git commit -m”rich主人公+美女”

git log --oneline --all


在rich節點上,切換到master,回到開始分支出來的master節點:

git checkout master



git add . git commit -m”在master上故事情節繼續發展”


在master上有4個節點,也就是4個版本:

git log --oneline


顯示所有歷史記錄:git log --all
圖示全部歷史記錄(建議使用,如下圖所示):git log --oneline --graph --all

git log --oneline --graph --all


分支有什么用?
比如開發一個應用,在master分支上開發了v1 v2 v3 v4個版本,在v2版本上覺得一周之后可以上線了,上線后發現在v2版本上有一個bug,但是在master主線上,已經開發到v4版本,在v4版本上開發新的功能了,這時應該怎么辦?
分支就可以解決這個問題,通過git命令切換到v2版本,在v2版本master節點上,建立一個分支專門修復bug,當分支上bug修復好了,在回到master節點的v4版本繼續開發,等開發完成,最后,合并分支,這樣新功能開發完成了,bug也修復好了。
六、合并分支branch(默認分支master)

git init test cd test/ touch gblfy.txt



git commit -m”第1個版本”


git add . git commit -m”第2個版本”

git tag -a v1 -m”第一個標簽”


git add . git commit -m”第3個版本”

git log --oneline --graph --all

git checkout 62b6676

git log --oneline --graph --all


在v1版本上創建分支:git branch 分支名
也可以,創建并切換到創建的分支:git checkout -b 分支名:

git checkout -b helper


git add . git commit -m”fix”


回到master分支:

git checkout master



git add . git commit -m”4”

git log --oneline --graph --all


現在的情況是,在helper分支上bug已經修復了,但是在master節點上,還沒有合并分支。
原則是:在上線新版本之前合并分支,修復bug
合并分支:git merge 分支名
將分支合并到當前節點上

git merge helper



解決沖突,根據需求來就可以。

git add . git commit -m”merged master + helper”

git log --oneline --graph --all


七、遠程分支
版本控制(git倉庫)放在本地有一定的風險性,在遠程倉庫創建一個版本控制(git倉庫)。
例如:本地(local)git倉庫也有4個版本,將本地倉庫的4個版本推送到遠程(remote)git倉庫,這樣本地倉庫和遠程倉庫都有4個版本。
假設1:在本地新增第5個版本,只需要把第5個版本推送到遠程分支上即可(不需要把整個項目重新進行再次推送)。
假設2:本地這臺電腦的倉庫掛了,換一臺電腦直接從remote倉庫,將代碼進行拉取即可。
案例演示:

git init test


cd test/ touch gb.txt


git add . git commit -m”本地file推送remote測試01”

git log


下一步找一個remote倉庫進行推送:
碼云進行演示:
登錄馬云:




登錄github,新建一個倉庫,(原理和本地一樣,新建一個倉庫,并進行初始化)

添加遠程倉庫:git remote add 遠程名稱 遠程地址

git remote add mayun git@gitee.com:gb_90/test.git


這樣本地倉庫和遠程倉庫就建立好連接了
列出所有遠程倉庫:git remote
這樣就會把本地倉庫連接的所有遠程倉庫都列出來

git remote


如果需要詳細信息,執行命令:git remote -v

git remote -v


fetch指的是:代碼拉取(下載)地址
push指的是:代碼推送(上傳)地址
一般個人就是一個地址
上傳代碼:git push -u 遠程名 分支名

git push -u mayun master


git push 推送
-u:就是在服務器端設置如果下一次有人想把這代碼推送,應該推送到哪一個分支上去合并,因此推送代碼后面要加-u,避免以后往下拉取代碼出問題。
執行命令后,報錯 提交失敗,意思是,你可能是第一次提交,在執行git push 之前,先要執行,git pull

git pull

問題現象:在執行git pull的時候,提示當前branch沒有跟蹤信息:
解決方案:
比如說要操作master吧,一種是直接指定遠程master:
格式:git pull 遠程名稱分支
例如:

git pull mayun master git pull origin master git pull


發生報錯:我們拒絕,因為你當前的分支是比較落后,也就是說,當前創建的分支,沒有遠程的分支新,現象是這樣的。下面進行強制推送-
git push -u -f origin master 強制推送代碼,把matser進行覆蓋

git push -u -f mayun master


2、已經成功了,將本地代碼推送到遠程倉庫
3、登錄遠程,進行驗證

4、git branch 查看本地分支
git branch -r 查看遠程分支

git banch -r git branch


再次測試驗證:

touch 1.txt


git add 1.txt git commit -m”本地代碼推送remote測試02”

git push -u mayun master



驗證成功!!!
本地倉庫刪除,從遠程拉取代演示:


克隆(拷貝)倉庫:git clone 倉庫地址

git clone git@gitee.com:gb_90/test.git


cd test/ git log --oneline --all


如果使用git clone 鏈接 這個克隆命令
他會默認為將遠程倉庫設置為你克隆的地址,不需要你再去設置。代碼拉取的地址

git remote


注:不是mayun對嗎?默認遠程倉庫名稱:origin,剛才咱們自己定義的mayun對吧,這個名稱可以自定義

git remote -v

touch 2.txt


git add 2.txt git commit -m”local-->>>>>remote03”


如果繼續使用,mayun就會出錯

git push -u mayun master


可以查看遠程名稱

git remote


把remote名稱修改為默認的origin即可:

git push -u origin master



八、多人遠程操作(重點)
案例演示:




本地設定2個人,gb,ly,在idea開2個終端進行模擬
gb先從remote拉取倉庫代碼

git clone mayun git@gitee.com:gb_90/gblfy.git gb


ly從remote拉取倉庫代碼:

git clone mayun git@gitee.com:gb_90/gblfy.git gb



gb ly分別進入倉庫:

cd gb/

cd ly/


gb創建1.txt:

touch 1.txt



添加至暫存區,提交到本地倉庫:

git add 1.txt git commit -m”第一個版本”


情景1:gb創建文件---->>>>>添加至暫存區---->>>>>
提交到本地倉庫。這時ly本地倉庫是沒有的,因為gb還沒有將本地的倉庫的代碼推送到remote倉庫。
將本地倉庫代碼---->>>>>推送到remote倉庫

git push -u origin master


查看remote:

查看提交記錄:

代碼已經同步完成!!!
情景2:這時ly本地倉庫中仍然沒有,remote倉庫中的最新代碼
獲取遠程更新:git pull 意思是拉取、下載

git pull



這樣gb ly 2個倉庫的代碼就同步了!!!!

git add 1.txt git commit -m”第2個版本”

git push -u -origin master

查看具體提交信息:



git pull


git add . git commit -m”第3個版本”

git push -u origin master



git add . git commit -m””


未從remote拉取最新代碼,對內容進行修改,會報以下異常:

git push -u origin master

解決方案:

git pull



git add .

git push -u origin master


git pull


git pull命令就相當于git fetch && git merge

git fetch只是把代碼拉取到本地,放置到已提交狀態下。
首先gbly是gb更新一次,上傳remote
ly從remote將代碼拉取到本地,修改后

總結

以上是生活随笔為你收集整理的git下载安装、验证、企业实战单机、多人协作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。