一。GIT的基本操作
1.GIT的操作和查看內容
[root@master ~]# yum install git -y
[root@master ~]# git config --list:查看所有配置
2.GIT倉庫初始化
[root@master ~]# mkdir /gittest:創建目錄
[root@master ~]# cd /gittest/:進入目錄
[root@master gittest]# git init:初始化
[root@master gittest]# ls -a:查看內容
. ?.. ?.git
[root@master gittest]# git status:查看工作區工作狀態
3.git常見的命令:
二。Gitlab的基本內容
1.Gitlab的介紹
GitLab是利用 Ruby on Rails 一個開源的版本管理系統,實現一個自托管的Git項目倉庫,可通過Web界面進行訪問公開的或者私人項目。它擁有與Github類似的功能,能夠瀏覽源代碼,管理缺陷和注釋。可以管理團隊對倉庫的訪問,它非常易于瀏覽提交過的版本并提供一個文件歷史庫。團隊成員可以利用內置的簡單聊天程序(Wall)進行交流。它還提供一個代碼片段收集功能可以輕松實現代碼復用,便于日后有需要的時候進行查找。 一個基于GIT的源碼托管解決方案 基于Ruby on rails開發 集成了nginx postgreSQL redis sidekiq等組件
2.安裝包下載和配置
1.wget -c https://packages.gitlab.cn/repository/el/9/gitlab-jh-17.1.8-jh.0.el9.x86_64.rpm
2.yum install gitlab-jh-17.1.8-jh.0.el9.x86_64.rpm
3.[root@slave3 gitlab]# vim /etc/gitlab/gitlab.rb:配置文件
在文件的96行添加以下內容來收發郵件
? ?gitlab_rails['gitlab_email_display_name'] = 'gitlab'
? ?gitlab_rails['gitlab_email_from'] = '123456789@qq.com'
? ?gitlab_rails['smtp_enable'] = true
? ?gitlab_rails['smtp_address'] = "smtp.qq.com"
???gitlab_rails['smtp_port'] = 465
???gitlab_rails['smtp_user_name'] = "123456789@qq.com"
???gitlab_rails['smtp_password'] = "授權碼"
???gitlab_rails['smtp_domain'] = "smtp.qq.com"
???gitlab_rails['smtp_authentication'] = "login"
???gitlab_rails['smtp_enable_starttls_auto'] = false
???gitlab_rails['smtp_tls'] = true
???user["git_user_email"] = "123456789@qq.com"
4.重啟服務
gitlab-ctl reconfigure
5.gitlab的命令
6.通過配置ip進行訪問:
?登陸密碼默認在此目錄下,最多24小時
vim /etc/gitlab/initial_root_password
7.進行推送代碼:假設給tom分配了任務,tom需要在linux中從root上進行拉取所需要的項目
(1)與root用戶建立聯系,從root中下載下來所需要的項目目錄
git clone http://192.168.142.138/root/gitlab1.git
(2)創建首頁分支,進行添加內容(實際中的代碼)
[root@slave3 ~]# cd gitlab1/:進入通過git下載下來的項目文件內
[root@slave3 gitlab1]# git init:初始話git
[root@slave3 gitlab1]# git branch index:創建分支
[root@slave3 gitlab1]# git checkout index:進入分支
切換到分支 'index'
[root@slave3 gitlab1]# echo "my document" > index.html:將自己的代碼放入文件
[root@slave3 gitlab1]# git add . :將內容添加到本地
[root@slave3 gitlab1]# git status:查看狀態
位于分支 index
要提交的變更:
? (使用 "git restore --staged <文件>..." 以取消暫存)
? ? ? ? 新文件: ? index.html[root@slave3 gitlab1]# git config user.name tom:添加用戶自己
[root@slave3 gitlab1]# git config user.email 123@qq.com:添加郵件
[root@slave3 gitlab1]# git push origin index:進行添加index這個分支到主項目中
(3)再查看是否添加成功:
(4)進行合并分支
(5)選擇合并請求下的分配,選擇右上角的項目進行合并請求,在源分支添加上tom上傳的index文件,目標分支填寫上root的主文件進行比較合并
填寫完上述內容后進行合并,項目經理則會收到代碼合并的請求,最終由項目經理進行同意請求,則整個則為完成
拓展:如何進行免密推送:
1.添加一個本地的公鑰
[root@slave3 .ssh]# ssh-keygen
[root@slave3 .ssh]# cat /root/.ssh/id_rsa.pub
2.將公鑰上傳到tom的密鑰欄