1. 程式人生 > >配置git 通過git://協議進行只讀訪問, 以及配置本地訪問 ,以及通過http 訪問

配置git 通過git://協議進行只讀訪問, 以及配置本地訪問 ,以及通過http 訪問

git 可以使用四種主要的協議來傳輸資料:本地傳輸,SSH 協議,Git 協議和 HTTP 協議。

1本地協議 

            遠端倉庫在該協議中就是硬碟上的另一個目錄。這常見於團隊每一個成員都對一個共享的檔案系統(例如 NFS )擁有訪問權,抑或比較少見的多人共用同一臺電腦的時候。後者不是很理想,因為你所有的程式碼倉庫例項都儲存在同一臺電腦裡,增加了災難性資料損失的可能性。

如果你使用一個共享的檔案系統,就可以在一個本地倉庫裡克隆,推送和獲取。要從這樣的倉庫裡克隆或者將其作為遠端倉庫新增現有工程裡,可以用指向該倉庫的路徑作為URL。比如,克隆一個本地倉庫,可以用如下命令完成:

 首先,我們在 我們建立一個作為伺服器端的庫(雖然是在本地,)










然後我們在別的目錄建立一個clone這個小專案,而這個小專案會把/home/git/repos.git 當作遠端伺服器,

把clone 下來的小專案repos 上push(相當於svn 的提交到伺服器) 到/home/git/repos.git




git clone /home/git/repos.git

會在當前目錄下生成repos目錄 repos目錄下有個.git 目錄,

repos 目錄下執行git remote 會預設有一個 origin 的遠端端,就是clone 的源端,

而git 的專案是有分支的,預設分支名字是master

所以要把當前專案推送到遠端端需要指定將哪個分支推到哪個遠端端,

git push origin master



(將當專案的master 分支,推送到origin遠端端(即/home/git/repos.git),)/

當然也可以新增其它的遠端端



git repos$


git remote add another_server /tmp/repos.git (前提是/tmp/repos.git 存在,)


git repos$
git remote

another_server

origin




另一個使用者再次從/home/git/repos.git clone 時,裡面就多了a.java檔案






===========================================================================================================================




SSH 協議

================================================================================

Git 協議

接下來是 Git 協議。這是一個包含在 Git 軟體包中的特殊守護程序; 它會監聽一個提供類似於 SSH 服務的特定埠(9418),而無需任何授權。用 Git 協議運營倉庫,你需要建立 git-export-daemon-ok 檔案——它是協議程序提供倉庫服務的必要條件——但除此之外該服務沒有什麼安全措施。要麼所有人都能克隆 Git 倉庫,要麼誰也不能(通常做為只讀)。 這也意味著該協議通常不能用來進行推送。你可以允許推送操作;然而由於沒有授權機制,一旦允許該操作,網路上任何一個知道專案 URL 的人將都有推送許可權。不用說,這是十分罕見的情況。

比如在/home/git 目錄下有一個repos.git ,把想把repos.git 能過git:// 協議訪問

需要執行

Git 協議的設定都相對簡單。基本上,只要以長期守護程序的形式執行該命令:

git daemon --reuseaddr --base-path=/home/git



這還不夠, 如果想要repos.git 通過git://協議,需要建立一個空檔案(只要檔案存在就可以)













=========================================================================================================================



HTTP/S 協議

最後還有 HTTP 協議。HTTP 或 HTTPS 協議的優美之處在於架設的簡便性。基本上, 只需要把 Git 的純倉庫檔案放在 HTTP 的檔案根目錄下,配置一個特定的 post-update 掛鉤(hook),就搞定了(Git 掛鉤的細節見第七章)。從此,每個能訪問 Git 倉庫所在伺服器上的 web 服務的人都可以進行克隆操作

當然要裝上apache  等web 伺服器

相關推薦

配置git 通過git://協議進行只讀訪問, 以及配置本地訪問 ,以及通過http 訪問

git 可以使用四種主要的協議來傳輸資料:本地傳輸,SSH 協議,Git 協議和 HTTP 協議。 1本地協議              遠端倉庫在該協議中就是硬碟上的另一個目錄。這常見於團隊每一個成員都對一個共享的檔案系統(例如 NFS )擁有訪問權,抑或比較少見的

網路程式設計通過tcp協議進行聊天對話

網路程式設計 自從網際網路誕生以來,現在基本上所有的程式都是網路程式,很少有單機版的程式了。 計算機網路就是把各個計算機連線到一起,讓網路中的計算機可以互相通訊。網路程式設計就是如何在程式中實現兩臺計算機的通訊。 網路程式設計對所有開發語言都是一樣的,Py

Git通過設定代理進行訪問

1. 問題背景 近期由於”Wall”的原因, github不能下載程式碼, 如報以下錯誤: daviddeMacBook-Pro:~ david$ git co https://github.

把專案放到碼雲上,通過git 進行專案管理

1.在碼雲上新建一個專案 把使用 Readme檔案初始化這個專案這個勾選去掉 專案生成後會看到 碼雲的git 簡易的命令列入門教程: Git 全域性設定: git config --glob

python使用paramiko模組通過ssh2協議對交換機進行配置

該程式碼用的是paramiko模組,python版本是python2.7 轉載說明:轉載請註明出處:http://blog.csdn.net/qq_25134989/article/details/78918188 下面上原始碼 # -*- coding: utf-8

通過git命令,將原生代碼與github,進行上傳下載操作。

此篇預設大家已經瞭解git的一些基本命令,如不瞭解,可以參考這篇基本命令介紹git基本命令。 1.進行本地的一些初始化操作  (一). 先初始化一個倉儲,其中包含我們需要上傳的程式碼。 git init //在資料夾內開啟git命令,輸入上面命令即可初始化 (二).

內網git使用代理通過ssh協議拉取程式碼

場景:由於公司網路使用內網,上網通過代理,當想拉取程式碼的時候可以通過http/https協議拉取,通過export http.proxy=代理IP:8888,但是這樣就要輸入使用者名稱密碼,通過ssh

[工具設定]把專案放到碼雲上,通過git 進行專案管理

1.在碼雲上新建一個專案 把使用 Readme檔案初始化這個專案這個勾選去掉  專案生成後會看到 碼雲的git 簡易的命令列入門教程: Git 全域性設定: git config --global user.name "你的碼雲賬號" git config -

Bitbucket如何通過git進行pr

首先什麼是prpr的全稱為pull reqeust,這裡我用知乎上的原話表達pr的意思我嘗試用類比的方法來解釋一下 pull reqeust。想想我們中學考試,老師改卷的場景吧。你做的試卷就像倉庫,你的試卷肯定會有很多錯誤,就相當於程式裡的 bug。老師把你的試卷拿過來,相當

git 對 Microsoft Word 進行版本控制

dcl code 版本控制系統 documents custom ec2 adobe pen you   昨天中國高校發生了一件駭人聽聞的事情,聽說不少高校的校園網用戶連接校園網被勒索病毒給黑了,重要文件全部被加密,必須要支付贖金才能解密,具體新聞可以參見:http://w

mac 配置 ssh 到git

ica write 文件 隱藏文件 detail ssh user 文本編輯器 ide 1、進入終端命令行 (1)輸入:cd .ssh/ 進入到.ssh後,輸入ls,會輸出“known_hosts”,如果沒有創建過rsa的話 (2)輸入:man

第23條:通過委托與數據源協議進行對象間通信

網上 bsp 交互 bject cdata 框架 包含 編程語言 int   第4章:協議與分類   Objective-C 語言有一項特性叫做“協議”(protocol),它與 Jave 的 “接口”(interface)類似。Objective-C 不支持多重繼承,因而

【物聯網雲端對接-4】通過MQTT協議與百度雲進行雲端通信

src 發布 訂閱 操作 websocket 編寫 通用 頁面 開發 百度雲的天工物聯網服務目前包括:物接入、物解析、物管理、時序數據庫和規則引擎等5大部分,本篇文章僅介紹物接入。 天工物聯網的物接入,從開發者的角度來說相對有些復雜,需要多步操作才能實現一個雲設備的創建,

gitlab+jenkins+maven+docker持續集成(六)——.Jenkins獲取git tags代碼進行持續集成

gitlab+jenkins+maven+docker持續集成(六)——.jenkins獲取git tags代碼進行持續集成GitFlow的工作流如上圖所示,在開發工作中,不同的代碼分支對應著項目或產品的不同形態,圍繞特定形態的人力投入也不相同。隨著時間的推進,我們在 開發分支 中合並產品的功能實現,產品的功

Cisco PT模擬實驗(20) 通過TFTP協議備份、恢復配置或系統升級

tftp協議 cisco 配置備份恢復 Cisco PT模擬實驗(20) 通過TFTP協議備份、恢復配置或系統升級實驗目的: 掌握TFTP方式備份、恢復配置文件的基本命令 掌握TFTP上傳IOS文件並升級系統的方法 熟悉TFTP協議文件傳輸的原理實驗背景

基於SSH協議clone GitHub遠端倉庫到本地-git

輸入框 setting 生成 ready 可能 取代 初學 into etc 經常逛 GitHub 的可能都知道,在 clone 遠端倉庫的時候,會有兩個選項,如下圖: 首先我們來說明一下兩種方式的區別。 使用 HTTPS url 克隆對初學者來說會比較方便,復制HTT

訪問dubbo沒有權限,通過ip進行跳轉服務器,並通過有權限服務器代理訪問

service _for dnat asq tro -- 編譯 tar conf #啟動ip跳轉 echo 1 > /proc/sys/net/ipv4/ip_forward vi /etc/sysctl.conf net.ipv4.ip_forward =1

配置TortoiseGit為git merge/diff tool

lse 令行 .exe ack remote 設置 too rto prompt #設置prompt backupgit config --global difftool.prompt falsegit config --global mergetool.prompt fa

Ecplise通過Git將項目提交到GitHub

repo src pan nec margin jpg ref gin pla 一、參考https://blog.csdn.net/bendanany/article/details/78891804 二、註意點:   1、倉庫名必須和項目名相同;   2、若提交出現Can

IDEA下通過Git實現代碼管理

本地倉庫 ini .exe int 項目 如圖所示 set 需要 同步 IDEA下通過Git實現代碼管理 1、介紹 1.1 Git概述 Git是類似於SVN等代碼管理軟件,使用分布式技術實現。Github是互聯網代碼倉庫,每個人可以在上面創建自己的倉庫,使用git完成同gi