git(分布式版本控制)
git伺服器端
[root@web1 ~]# yum install -y git ==>>安裝git
[root@web1 ~]# mkdir /var/git
[root@web1 ~]# git init /var/git/project --bare ==>>建立乙個空的git倉庫
初始化空的 git 版本庫於 /var/git/project/
[root@web1 ~]# ls /var/git/project/
branches config description head hooks info objects refs
[root@web1 ~]#
git客戶端
git指令表,轉殖完倉庫之後要在倉庫目錄下執行git的相關指令
clone:將遠端伺服器的倉庫轉殖到本地
config:修改git配置
add:新增修改到暫存區
commit:提交修改到本地倉庫
push:提交修改到遠端伺服器
1.git安裝部署
[root@web2 ~]# yum install -y git
[root@web2 ~]# git clone [email protected]:/var/git/project ==>>轉殖倉庫到本地
[root@web2 ~]# cd project/
[root@web2 project]# git config --global user.email "[email protected]" ==>>修改git配置,宣告自己的資訊,第一次操作需執行
[root@web2 project]# git config --global user.name "your nas"
[root@web2 project]# git status ==>>檢視倉庫的資料動態
[root@web2 project]# git add . ==>>將工作區的修改提交到暫存區
[root@web2 project]# git commit -m "注釋" ==>>將暫存區的修改提交到本地倉庫
[root@web2 project]# git config --global push.default ****** ==>>第一次上傳伺服器需要執行
[root@web2 project]# git push ==>>將本地倉庫上傳到伺服器
[root@web2 project]# git pull ==>>將伺服器的更新部分同步到本地
[root@web2 project]# git log ==>>檢視修改日誌
[root@web2 project]# git log --pretty=oneline ==>>檢視修改了幾個版本
[root@web2 project]# git log --oneline
[root@web2 project]# git reflog
------------------------------------------
windows可以安裝git和otrtoisegit使用
------------------------------------------
[root@web2 project]# git reflog
[root@web2 project]# git log --oneline
65fd173 789 c
f50595e 456 c
d8ccca2 123 c
d11b274 add nfss sssssss
cd5a274 add nfss
9492653 add new.txt
a28e27c zhuhis
[root@web2 project]# git reset --hard f505 ==>>回到f50595e 456 c這個修改位置
2.git 分支
常見的分支規範如下:
master分支(master是主分支,是**的核心)
develop分支(develop最新開發成果的分支)
release分支(為發布新產品設定的分支)
hotfix分支(為了修復軟體bug缺陷的分支)
fesature分支(為開發新功能設定的分支)
[root@web2 project]# git branch 分支名 ==>>建立分支
[root@web2 project]# git branch -v ==>>檢視分支
[root@web2 project]# git checkout 分支名 ==>>切換分支
[root@web2 project]# git checkout master ==>>合併到主分支之前,切換到主分支
[root@web2 project]# git merge 分支名 ==>>合併到主分支
git伺服器
基於ssh協議伺服器
基於git協議伺服器
基於http協議伺服器
1.基於ssh協議伺服器
伺服器安裝git
[root@web1 ~]# yum install -y git ==>>安裝git
[root@web1 ~]# mkdir /var/git
[root@web1 ~]# git init /var/git/project --bare ==>>建立乙個空的git倉庫
客戶端可以實現ssh免密登入
[root@web2 project]# ssh-keygen -f /root/.ssh/id_rsa -n '' ==>>建立金鑰
[root@web2 project]# ssh-copy-id 192.168.2.100 ==>>將金鑰分發
2.基於git協議伺服器
伺服器端
[root@web1 ~]# yum install -y git-daemon
[root@web1 ~]# git init --bare /var/git/base_git ==>>建立版本庫
[root@web1 ~]# vim /usr/lib/systemd/system/[email protected] ==>>修改路徑
execstart=-/usr/libexec/git-core/git-daemon --base-path=/var/git --export-all --user-path=public_git --syslog --inetd --verbose
[root@web1 ~]# systemctl start git.socket
客戶端[root@web2 ~]# git clone git:
3.基於http協議伺服器
服務端[root@web1 ~]# yum -y install httpd gitweb
[root@web1 ~]# vim +11 /etc/gitweb.conf ==>>在11行新增內容
$projectroot="/var/git";
[root@web1 ~]# git init --bare /var/git/base_http ==>>建立版本庫
初始化空的 git 版本庫於 /var/git/base_http/
客戶端圖形化介面訪問
[root@web2 ~]# firefox
GIT分布式版本控制
git config global user.name your name git config global user.email email example.com git init初始化建立版本庫 git clone url從網路上轉殖repository,注意clone是複製了history...
分布式版本控制 Git(二)
分支在實際中有什麼用呢?假設你準備開發乙個新功能,但是需要兩周才能完成,第一周你寫了50 的 如果立刻提交,由於 還沒寫完,不完整的 庫會導致別人不能幹活了。如果等 全部寫完再一次提交,又存在丟失每天進度的巨大風險。現在有了分支,就不用怕了。你建立了乙個屬於你自己的分支,別人看不到,還繼續在原來的分...
Git分布式版本控制學習
git和svn都是版本控制系統。git是命令列操作,不喜歡的就算了,看完如果有身體不適還請及時就醫 git基本常用命令如下 mkdir xx 建立乙個空目錄 xx指目錄名 pwd 顯示當前目錄的路徑。git init 把當前的目錄變成可以管理的git倉庫,生成隱藏.git檔案。git add xx ...