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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

GIT版本控制系统

發布時間:2025/3/21 windows 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GIT版本控制系统 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

一.git安裝與介紹

1.git的概述

2.GIT的安裝

二.GIT的運用

1.先進入倉庫文件創建用戶與郵箱

2.寫入數據基本命令測試

3.HEAD指針

4.Git分支

5.免密通信

6.git其他操作命令:

7.踩坑瞬間


一.git安裝與介紹

1.git的概述

git是一種開源的分布式的vcs(version control system)版本控制系統。

集中式 SVN

分布式 GIT

關網:Gitee - 基于 Git 的代碼托管和研發協作平臺

GitHub: Where the world builds software · GitHub

git是服務

服務端:就是提供git倉庫服務供客戶端訪問使用的

客戶端:訪問git倉庫使用數據及修改數據

所謂的服務端安裝的其實也是git

git 基本概念

--git倉庫:保存所有數據的地方

--工作區:從倉庫提取出來的文件,放在磁盤上使用或修改

--暫緩區:保存下次提交文件信息的列表信息也就add之后的列表

2.GIT的安裝

yum源準備

~]# vim /etc/yum.repos.d/CentOS-Base.repo [extras] gpgcheck=1 gpgkey=http://mirrors.tencentyun.com/centos/RPM-GPG-KEY-CentOS-7 enabled=1 baseurl=http://mirrors.tencentyun.com/centos/$releasever/extras/$basearch/ name=Qcloud centos extras - $basearch [os] gpgcheck=1 gpgkey=http://mirrors.tencentyun.com/centos/RPM-GPG-KEY-CentOS-7 enabled=1 baseurl=http://mirrors.tencentyun.com/centos/$releasever/os/$basearch/ name=Qcloud centos os - $basearch [updates] gpgcheck=1 gpgkey=http://mirrors.tencentyun.com/centos/RPM-GPG-KEY-CentOS-7 enabled=1 baseurl=http://mirrors.tencentyun.com/centos/$releasever/updates/$basearch/ name=Qcloud centos updates - $basearch ? ~]# vim /etc/yum.repos.d/CentOS-Epel.repo [epel] name=EPEL for redhat/centos $releasever - $basearch failovermethod=priority gpgcheck=1 gpgkey=http://mirrors.tencentyun.com/epel/RPM-GPG-KEY-EPEL-7 enabled=1 baseurl=http://mirrors.tencentyun.com/epel/$releasever/$basearch/

服務端:

# 騰訊yum或阿里的都可以 ~]# dnf -y install git ? # centos8服務端安裝git # 或7的安裝方法 ~]# yum -y install git ~]# mkdir /var/lib/git ? # 創建git目錄 ~]# git init /var/lib/git/project --bare # 創建空倉庫,用來存儲項目數據 # --bare 不加這個則倉庫只能看不能寫

客戶端:

~]# yum -y install git ? # 客戶端安裝git ~]# git clone 192.168.4.20:/var/lib/git/project # 克隆倉庫

二.GIT的運用

1.先進入倉庫文件創建用戶與郵箱

# 使用前先創建用戶 ~]# cd project/ ? # 進入倉庫 ~]# git config --global user.name "abc" ? # 定義客戶端用戶名 ~]# git config --global user.email "abc@abc.com" # 定義客戶端郵箱 ? ~]# ls ./git (管理倉庫文件) ~]# cat ./gitconfig //檢查用戶與郵箱是否創建

2.寫入數據基本命令測試

~]# echo "abc001" > 001.txt (寫入內容測試) ~]# git add . # (當有多個文件的時候可以先指定單個)將倉庫有變化的文件提交到暫存區(只是通知系統暫時記住【為了永久保存】);可以把點換成指定的日志信息 ? ~]# git commit -m "001" # 提交之前暫存區的數據永久保存到倉庫(小的改變不保存)(-m 定義日志提示信息) ? ~]# git push ? # 將本地倉庫數據推送到遠程git倉庫服務器中 # 或者 ~]# git push -u origin master ? ~]# git log ? # 查詢完整日志 ~]# git log --pretty=oneline ? # 精簡日志 ~]# git log --oneline ? # 最精簡日志 ~]# git reflog ? # 本機操作日志 ? ~]# Git status # 查看并告訴下一步操作 ? ## 測試刪除 ~]# rm -rf project/ ~]# git clone 192.168.4.20:/var/lib/git/project ## 注意已經導入過一次用戶不需要重復定義,(自動保存在當前加用戶下)可查看 ~]# cat ~/.gitconfig [user]name = keyaoemail = 2023630895@qq.com ~]# git log --oneline # 精簡日志,此時只有一條操作日志 ~]# git reflog ? # 本機操作日志,此時還有刪除前的日志記錄

思維導圖

3.HEAD指針

可以將倉庫恢復到過去的狀態(類似虛擬機快照,只能對本倉庫)

~]# git reflog #查看日志,找到舊數據所在時間節點 ~]# git reset --hard xxxx ? #回到過去,xxxx是時間節點的記錄 #把需要找回的數據,從倉庫中拷貝到另外一個目錄 # --hard 強制恢復 ? ~]# git reset --hard xxxx ? #回到現在 #在之前的目錄找回舊數據 Ls .. #(查看上一次修改的目錄下文件) ls ..

4.Git分支

常見的分支規范如下:

分支名作用
MASTER分支MASTER是主分支,是代碼的核心
DEVELOP分支DEVELOP最新開發成果的分支
RELEASE分支為發布新產品設置的分支
HOTFIX分支為了修復軟件BUG缺陷的分支
FEATURE分支為開發新功能設置的分支

當項目內容比較多時,可以在git中使用分支,不同分支的文件可以互不干擾而不用創建多個倉庫

~]# git branch ? ? ? ? ? ? ? ? ? # 查看分支,*代表目前所在分支 # 如果沒有看到,需要提交一個對象,commit之后才會真正建立master分支,此時才可以建立其它分 ? ~]# git branch hotfix ? ? ? ? ? ? # 創建新分支, ~]# git checkout hotfix ? ? ? ? ? # 切換到新分支 ? ## 注意:此時ls查看本地有master的文件,這是git的特性,在master創建的文檔所有分支都可以看到(項目描述文檔),但分支創建之后master再次修改則就看不到了 ? ~]# echo "hotfix-001" > hotfix001.txt ? # 創建屬于hotfix分支的文件 ~]# git add . ? # 提交到暫存區 ~]# git commit -m "hotfix001" ? ? ? ? ? # 提交到本地倉庫 ~]# git checkout master ? ? ? ? ? ? ? # 切換回默認分支 ? ~]# echo master > master.txt ~]# git add . ~]# git commit -m "master" ~]# git checkout master ~]# git merge hotfix ? ? ? Merge branch 'hotfix' ...... # 合并日志,可寫可不寫 # 將hotfix分支的數據與當前分支合并 ~]# ls a.txt hotfix001.txt master.txt # 合并之后在提交一次不然可能會報錯

分支中的特殊情況:

如果分別在不同分支,創建同名文件,內容不同,再進行合并時,會發生沖突,此時需要手工修改沖突文件,修改完之后,就可以解決沖突

~]# git merge hotfix ? # 合并分支,失敗,因為兩個分支有同名文件,但內容不同CONFLICT (add/add): Merge conflict in test.txtAutomatic merge failed; fix conflicts and then commit the result. ? ~]# vim abc.txt ? # 手動修改文件(看要保存誰),保存退出后即可解決 ~]# git add . ? //提交到暫存區 ~]# git commit -m "abc+" ? //提交到本地倉庫

5.免密通信

使用ssh協議建立連接,實現

~]# ssh-keygen ? # 創建ssh秘鑰 ~]# ssh-copy-id 192.168.4.20 ? # 傳遞秘鑰到4.20 ~]# git clone 192.168.4.20:/var/lib/git/test ? # 克隆不需要密碼 ~]# cd test ? # 進入倉庫 ~]# echo xyz > xyz ? # 創建文件,然后提交 ~]# git add . ~]# git commit -m "xyz" ~]# git push ? # 上傳到服務器也無需密碼 ~]# Git pull (更新下拽最新數據)

6.git其他操作命令:

~]# git remote -v ? # 查看遠程服務器名字與ip(綁定了幾臺,默認兩個是一臺的名字) ~]# git remote add tom 192.168.4.20:/var/lib/git/test ? # 與新服務器關聯,名字叫tom ? ~]# echo test01 > test01.txt ? # 創建測試文件 ~]# git add . ~]# git commit -m "test01" ~]# git push -u origin master ? ? # 指定名為origin的遠程服務器提交數據到master分支 ? ~]# git remote remove origin ? # 刪除名為origin的遠程服務器 ? ~]# git remote -v ~]# echo test02 > test02.txt ? # 創建測試文件分支(當有多臺遠程服務器) ? ~]# git remote add origin ~]# 192.168.4.20:/var/lib/git/web ? # 添加名為origin的服務器 ~]# git pull tom master 更新數據 ~]# git pull web master ? # 從web服務器的master分支下載數據,如果是克隆命令的話可以復制整個倉庫的數據,如果是使用pull下載數據,僅僅會下載服務器有而客戶機沒有的數據

7.踩坑瞬間

1)制做倉庫時不加--bare報錯與解決

# 客戶端在項目中添加 ~]# vim .git/config ...... [receive]denyCurrentBranch = ignore

2)git push 失敗 # 指定節點 ~]# git push -u origin master

總結

以上是生活随笔為你收集整理的GIT版本控制系统的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 鲍鱼av在线 | 国产精品成久久久久三级 | 9色在线视频 | av生活片| 国产一极片 | 天降女子在线观看 | 91在线超碰 | 波多野结衣激情视频 | 住在隔壁的她动漫免费观看全集下载 | www.555国产精品免费 | 亚洲天堂中文字幕在线观看 | 亚洲第一综合网 | 国产精品久久久久999 | 亚洲精品久久久久久久久久 | 色哟哟日韩精品 | 一区二区手机在线 | 免费成人福利视频 | 精品视频在线观看免费 | 精品免费 | 中文字幕一区二区三区久久久 | 亚洲视频天天射 | 一级片在线播放 | 久久九九综合 | 51调教丨国产调教视频 | 亚欧精品视频一区二区三区 | 日韩色在线 | 成人动作片 | 特a级黄色片 | 中文字幕一二三四区 | 久久亚洲综合 | 精品国产一区二区三区久久久蜜月 | 日韩精选av| 国产成人亚洲精品 | av网站久久 | 日韩18p | 青青草这里只有精品 | 五月深爱 | 欧美男女啪啪 | 97久久人国产精品婷婷 | 粗喘呻吟撞击猛烈疯狂 | 请用你的手指扰乱我吧 | 亚洲av成人一区二区国产精品 | 日韩福利视频网 | 高清中文字幕mv的电影 | 国产伦人伦偷精品视频 | 911香蕉| 天天做天天躁天天躁 | 精品视频99 | 69中国xxxxxxxxx96| 欧美日韩一区在线观看 | 精品欧美久久 | 成人av中文解说水果派 | 天天干天天干天天干天天 | 黑人vs亚洲人在线播放 | 激情四射网 | 成都电影免费大全 | 免费欧美一级视频 | 欧美少妇bbw | 欧美激情性生活 | 综合色天天 | 美女免费av| 久久99久久久久 | 亚洲情网 | 亚洲综合av一区二区三区 | 欧美日视频 | 少妇中文字幕 | 日韩aa| 99久久99久久精品国产片果冻 | 国产成人无码av在线播放dvd | 韩日视频在线观看 | av在线播放一区二区三区 | 国产片久久 | 欧美一级黄色大片 | 让人下面流水的视频 | 欧美性极品xxxx做受 | www.好了av| 91看片看淫黄大片 | 亚洲精选中文字幕 | 久久激情五月 | 激情小说一区 | 夜间福利在线观看 | 日本顶级大片 | 久久cao| 欧美1 | 一级片一区| 乱子伦视频在线看 | 精品久久久久国产 | 欧美四级在线观看 | 欧美老女人xx | 超碰h | 亚洲综合激情网 | 亚洲一区影院 | 欧美xxx在线观看 | 草莓视频成人在线 | 亚洲精品国产精品乱码在线观看 | 大帝av| 老师的肉丝玉足夹茎 | 性感美女在线观看 | 99热影院 |