git倉庫與專案原始碼分離

2021-10-10 03:26:43 字數 1124 閱讀 2602

之前是將專案原始碼放到git倉庫下面,後面想一下覺得有點麻煩,若是在伺服器端切換分支的話是直接將伺服器端的專案**切換到對應的分支下的**,這個時候若是有人訪問**可能會出現問題,所以我就想有沒有辦法將git倉庫與專案原始碼分離,不將原始碼放到git倉庫下面,git倉庫不存放原始碼,只做版本控制,後面也確實找到了對應的方法,是用hook鉤子,現在說一下具體的配置方法:

1.在伺服器端專案檔案根目錄下新建乙個同級目錄,

例如專案檔案是在 /home 目錄下的檔名為demo,那麼在linux執行下面操作

cd /home

mkdir git && cd git    //這裡新建乙個git資料夾並切換到目錄下

mkdir demo.git  && cd demo.git     //這裡新建乙個資料夾做git倉庫

git init --bare            //git倉庫初始化,--bare的意思是建立裸倉庫

初始化後我們可以看到自動生成一堆檔案,

ls        //檢視檔案

cd hooks             //到hooks檔案目錄下

cat > post-receive      //按回車輸入下面的內容

#!/bin/sh

git --work-tree=/home/demo --git-dir=/home/git/demo.git checkout -f /*/home/demo為專案檔案的位址,/home/git/demo.git為git倉庫位址*/

輸入完成後回車並按ctrl+d儲存,然後輸入

chmod +x post-receive

2.本地

若是已經有git專案了,直接新增乙個倉庫位址就行了

git remote add vps ssh://***xx@******xx/home/git/demo.git //vps是遠端庫的名字,***xx@******xx是伺服器位址,後面的是倉庫的位址

以後推送的時候推送到vps這個遠端倉庫下,就會將更新推送到我們設定的路徑,也就是遠端專案檔案目錄

git push vps master

這樣就可以實現git倉庫與專案原始碼分離了,git倉庫只做版本控制,不會影響到專案原始檔,我們也可以分離出乙個網域名稱用於測試,測試沒問題後再將專案更新推送到線上的專案中

git原始碼洩露

0x00 原理 在 安全維護方面,git和svn資訊洩露是非常常見也是非常致命的乙個漏洞。當前大量開發人員使用git進行版本控制,對站點自動部署。如果配置不當,可能會將.git資料夾直接部署到線上環境。這就引起了git洩露漏洞。githack是乙個.git洩露利用指令碼,通過洩露的.git資料夾下的...

Git 原始碼安裝方法

1.git 已安裝版本檢視 sudo git version 或3.git 安裝 git 的工作需要呼叫 curl,zlib,openssl,expat,libiconv 等庫的 所以需要先安裝這些依賴工具。在有 yum 的系統上 比如 fedora 或者有 apt get 的系統上 比如 debi...

linux centos 原始碼安裝git

linux 安裝 登陸原始碼安裝 wujun localhost wget 2.建立git家目錄 mkdir git 3.解壓並安裝 登陸目標機器,解壓並安裝。home git是指的安裝目錄 tar zxvf git manpages 2.9.5.tar.gz cd git 2.9.5 root l...