1. 程式人生 > >windows下搭建Git伺服器(轉)

windows下搭建Git伺服器(轉)

以下兩篇文章是在安裝Git伺服器時借鑑的文章,不錯,轉載在此:

1、所需的軟體下載及安裝

所需工具下載地址:

若只要使用git,只需要安裝msysgit就行了。copssh是一個ssh伺服器軟體。

msysgit的安裝:

我把安裝中關鍵的幾步截圖說明,其餘直接點選next 就行。


關於安裝路徑說明,最好放到每個盤的根目錄下,這裡我放到了c盤根目錄下,注意:路徑最好不要有空格,因為空格不好處理,所以這也是沒有放到Program Files目錄下的原因。

接下來的幾步,按照圖片所示選擇即可




然後等待安裝完成即可

copssh的安裝直接下一步就行。需要注意的還是路徑問題,跟上面一樣,最好放在根目錄下,我這裡放到了d盤。

安裝完成。所需環境已經搭好了。

2、對程式做相應配置

一、git相應配置

開啟這個圖示,進入命令列。在這裡,git的命令都可以使用,配置好git的user.name和user.email。git的使用,這裡不多說。

接著,在命令列下,使用命令 

ssh-keygen -t rsa 

建立一對公私鑰,預設放到當前使用者目錄下的.ssh資料夾中。用記事本開啟字尾為.pub的公鑰檔案,複製其中的內容,用於接下來的copssh的配置。

二、copssh的配置

從開始選單中找到安裝好的copssh資料夾,開啟其中的COPSSH Control Panel。

切換到Users選項卡。若Activated users下為空,則點選旁邊的“Add”按鈕。

在彈出的視窗中點選“Forward”,進入下一步,接著,在User中選擇一個使用者後,點選“Forward”,接著把options的第一個選項“Allow password authentication”的勾去掉,因為我們要用公私鑰來登陸,不用密碼登陸。接著點選“Forward”完成使用者新增。新增後應該如下圖。


接著,點選右下方的“Keys”按鈕,彈出視窗。這裡顯示的就是ssh伺服器中儲存的公鑰資訊了。若有公鑰資訊,使用者就可以使用對應的私鑰來遠端登陸到ssh伺服器進行相應的操作了。第一次我們安裝的時候,public key裡應該是空的,我們現在要做的,就是把上一步中,我們自己生產的公鑰的資訊,新增到這裡來,步驟如下。

找到COPSSH的安裝目錄,然後開啟其中的home資料夾,可以看到裡面有以我們剛加入的user的名字命名的資料夾,進入其中,開啟.ssh資料夾。在裡面新建一個名字為authorized_keys的檔案。注意,這裡沒有任何字尾。然後用記事本開啟,然後將剛才我們配置git時產生的公鑰裡的全部資訊複製拷貝到這個檔案裡。然後,儲存退出。

回到COPSSH Control Panel中,將點選“Keys”產生的視窗關閉後,再開啟,會看到其中有了一個公鑰資訊了,如下圖。


到了這裡,我們已經可以使用我們的私鑰,來登陸這個ssh伺服器了。開啟“Git Bash”。在命令列裡輸入

ssh [email protected]

ccf就是在COPSSH中配置的使用者名稱,192.168.1.100是我的ip地址,這些都根據你自己的設定,配置成自己的資訊。登陸成功後如下圖。


接下來你會發現,登陸成功以後,可以使用linux的命令,但是git的命令還是不能使用,別急,接下來我們解決這個問題。

我使用的解決方法很簡單,如下。

 將$ Git\libexec\git-core目錄下的git.exe , git-receive-pack.exe , git-upload-archive.exe , git-upload-pack.exe複製到$ICW\bin目錄下

將$Git\bin目錄下的libiconv-2.dll複製到$ICW\bin目錄下

將$Git下的share目錄整個拷貝到$ICW下。

其中,$Git是指msysgit的安裝目錄  ,同理$ICW指COPSSH的安裝目錄。

至此,配置完畢,接下來,開始使用。

3、git伺服器的測試

開啟“Git Bash”,使用命令

ssh [email protected]

連線到ssh伺服器。這個命令上面有說明。

然後依次使用下列命令

mkdir test.git

cd test.git

git init --bare

新建一個名為test.git的檔案,並在其中建立一個純git倉庫。

然後使用命令exit退出ssh伺服器

然後依次輸入下面命令:

cd d:

mkdir test

cd test

git clone [email protected]:test.git . 

在d盤下新建一個test資料夾並從伺服器clone一個git倉庫。

接著依次輸入下列命令

touch a b c

git status

git add .

git commit -m "just for test"

git push origin master

一切正常,也能push到伺服器上,至此,git伺服器搭建並測試完畢。

4、自己搭建git伺服器用途

 做了上面這些到底有什麼用呢?如果你是在自己家裡上網,你可以在自己電腦上搭建一個git伺服器,提供給你的朋友使用,可以和你的朋友一起開發一個東西,而且不用再一起就行,只要能連上因特網。

當然要做一個伺服器,首先要能連線到外網,如果你處在路由器的區域網內,需要做  埠對映,ssh伺服器的埠號是22,至於怎麼做,可以谷歌之,當然條件是,你家裡的路由要是連的是internet。我就悲劇了,因為用的寬頻通,本身就在他們的區域網內,而我沒法登陸他們的路由去管理,所以也就沒有實驗。(早知用聯通了。。。哎。)

至於對PPOE撥號IP地址會變動的問題,給你一個解決方案:動態域名解析。有免費的可以用,比較有名就是花生殼和希網,個人覺得,希網比較好用,這個,看個人喜好了,哈哈。如果對這個不瞭解,請谷歌(不要問我為什麼不用百度)。

好了,這篇文章就到這裡。最後吐槽一下,第一次寫技術總結,發現可真累,整整寫了一下午啊。以前總看別人的不覺得,向樂於奉獻的人致敬。


簡介

首先,我要說明的是Git不需要強調服務端和客戶端,你的電腦可以既是客戶端也是服務端。這意味著,你可以從其他電腦獲取程式碼,這時候你是客戶端;當別人需要獲取你程式碼的時候,你就是服務端。這是Git分散式的特性,也是Git風靡全球的原因之一。

需要安裝的軟體

建立一個服務端需要的軟體:

服務端和客戶端都需要安裝)

PuTTY(服務端和客戶端都需要安裝)

聚合vs需要安裝的軟體:

安裝步驟

1.安裝msysgit

a.當你安裝msysgit的時候,請選擇c:\Git作為安裝目錄,因為路徑名存在空格會導致bash指令碼命令出錯


b.在"修改你的PATH環境變數"步驟中,我推薦你使用“僅僅用Git Bash"(譯者注:如果選擇其他很可能會導致命令重名,如system32和Git中都可能有find.exe)


c.其他設定預設即可。在安裝過後,桌面會出現一個Git Bash的圖示。你可以嘗試一下git命令,如果效果與下圖一致,恭喜你成功地安裝了msysgit


d.增加C:\Git\bin和C:\Git\libexec\git-core到PATH環境變數。這個步驟非常重要


2.安裝CopSSH

a.就像msysgit,我們不在Program Files中安裝以避免空格問題。我們安裝在c:\ICW


b.用CopSSH預設的帳號密碼(譯者注:這一步會在你的電腦新增一個管理員帳號,這些引數就是管理員的使用者名稱和密碼,而且以後基本上是不會用到的)


c.安裝過後,在開始選單開啟COPSSH控制面板


d.使用者選項卡-增加新使用者


e.選擇一個電腦中存在的使用者(最好建立一個新的,務必設定密碼),在這裡,我們以jinweijie作為例子


f.允許全部訪問方法


g.使用者啟用後,點選"金鑰"按鈕,注意要選中正確的使用者


h.點選"新增",新增一個新的公鑰


i.使用預設的金鑰設定


j.輸入口令(可以為空,不過需要點選按鈕確定為空)和生成私鑰的名字


k.私鑰儲存在c:\ICW\home\jinweijie\ryan-vm-01_2048.ppk.(注:jinweijie是之前選擇的使用者,私鑰名稱可以自己設定)


測試開始

現在我們已經安裝了msysgit和copssh,我們需要測試是否成功安裝。首先我們開啟桌面下的Git Bash,輸入

[html] view plaincopyprint?
  1. ssh [email protected]  
ssh [email protected]
(jinweijie是你需要遠端登陸的使用者名稱,ryan-vm-01是遠端連線的域名或者ip,讀者可以通過127.0.0.1連線本機進行測試,或者在cmd命令列輸入ipconfig進行查詢)

輸入"yes"繼續

在你輸入你的密碼之後(windows使用者的密碼),然後嘗試輸入git,發現無法正常工作


這是因為CopSSH沒有在服務端找到git.exe,所謂我們需要配置CopSSH的git path

3.給CopSSH配置上Git路徑

a.用你偏愛的編輯器開啟C:\ICW\etc\profile,新增:/cygdrive/c/git/bin:/cygdrive/c/git/libexec/git-core(注意開始的分號)到變數PATH,也就是說

[html] view plaincopyprint?
  1. export PATH="/bin:$syspath:$winpath:/cygdrive/c/git/bin:/cygdrive/c/  
  2.         git/libexec/git-core"  
export PATH="/bin:$syspath:$winpath:/cygdrive/c/git/bin:/cygdrive/c/
		git/libexec/git-core"
記得儲存

b.點選兩次CopSSH控制面板上的大按鈕,重啟CopSSH服務

c.我們再次嘗試,執行Git Bash,輸入ssh [email protected],輸入密碼然後執行git命令,這次就能夠正常工作

4.在客戶端配置私鑰

a.把服務端的私鑰(在步驟1-k生成的)拷貝到客戶端中

b.客戶端中,使用puttygen.exe載入私鑰(如果你在步驟1-j設定了密碼,這裡會要求你輸入)

c.點解"儲存私鑰"來儲存一個plink.exe能夠識別的私鑰副本


5.建立一個倉庫,聚合vs

a.在服務端客戶端安裝gitextensions

b.因為我們已經在1-a安裝msysgit,所以這裡只安裝kDiff


c.安裝在C:\GitExtensions\,其他設定預設

d.在服務端,開啟Git Extensions,建立一個新倉庫

e.在服務端,倉庫目錄必須為CopSSH使用者的子目錄,選擇“中心倉庫,沒有工作區”(因為是服務端),然後初始化

f.在客戶端,開啟Git Extensions,點選克隆倉庫

g.在客戶端,倉庫地址是ssh://[email protected]/ICW/home/mydotnetproject.請注意,倉庫必須在服務端的C:\中

h.在客戶端,點選載入SSH金鑰,選擇步驟4-b儲存的金鑰

i.在客戶端,如果之前設定金鑰密碼,這裡需要再次輸入,然後點選克隆

j.在客戶端,編輯忽視的檔案

k.在客戶端,開啟vs,在mydotnetproject(克隆下來的倉庫)建立一個工程,你會發現檔案都在git的原始碼控制下

l.點選vs選項卡中的Commit,然後點選Commit & push

m.成功推送

n.在服務端可以看到新推送的檔案

That's all, happy GITTING!:)


相關推薦

windows搭建Git伺服器

以下兩篇文章是在安裝Git伺服器時借鑑的文章,不錯,轉載在此: 1、所需的軟體下載及安裝 所需工具下載地址: 若只要使用git,只需要安裝msysgit就行了。copssh是一個ssh伺服器軟體。 msysgit的安裝: 我把安裝中關鍵的幾步截圖說明,其餘直接點

團隊合作---使用Gitblit在Windows搭建Git ServerHTTP

用過Git之後再使用Svn是很頭疼的事情 於是就讓向老大要了一塊Windows伺服器的地址空間,來搭建Git Server 一、下載Gitblit 二、下載完解壓 (1)解壓之後我的gitblit檔案的路徑: D:\gitblitserver\gitb

Windows搭建git伺服器,簡潔版,伺服器端msysgit加copssh,客戶端msysgit原創

在看了網上各種攻略之後,自己在windows環境下還是遇到了各種各樣的問題,什麼permission deny啊等等,去網上找解決方案呢,尼瑪找不到一個適用的,在折騰了一天後,終於搞定,在這裡上傳一篇解決方案,為遇到同樣問題的人提供一個參考,願你看到後能少走一些

搭建一個windows的蜜罐系統

挺好玩的。 原文:https://blog.csdn.net/deux/article/details/199757?utm_source=blogxgwz0 包子@鄭州大學網路安全園 http://secu.zzu.edu.cn  搭建一個基於*nix系統的蜜罐網路

windows常用快捷鍵

原文轉自 https://blog.csdn.net/LJFPHP/article/details/78818696   win+E             &nbs

CentOS搭建FTP伺服器

https://www.linuxidc.com/Linux/2017-11/148518.htm   本文測試環境  1、CentOS 7  2、測試伺服器IP 192.168.1.170 1、安裝並啟動 FTP 服務 1.1 安裝 VSFT

linux搭建郵件伺服器sendmail

一、Sendmail概述 sendmail是最重要的郵件傳輸代理程式。理解電子郵件的工作模式是非常重要的。一般情況下,我們把電子郵件程式分解成使用者代理,傳輸代理和投遞代理。使用者代理用來接受使用者的指令,將使用者的信件傳送至信件傳輸代理,如:outlook express

windows搭建hadoop工程

這裡是接著之前的一篇 《hadoop在windows下的環境搭建 》來的~~~ 二、啟動hadoop 1、修改hadoop配置檔案,在conf目錄下,修改mapred-site.xml、core-site.xml和hdfs-site.xml三個檔案。

CentOS7搭建FTP伺服器轉載

1、安裝vsftpd首先檢視你是否安裝了vsftpd[root@localhost ~]# rpm -q vsftpd1vsftpd-3.0.2-10.el7.x86_64 (顯示也就安裝成功了!)如果沒有則安裝vsftpd[root@localhost ~]# yum in

Redhat7.0搭建郵件伺服器

前言:上次簡單的說明了郵件伺服器的工作原理以及簡單的配置郵件伺服器實現兩臺linux主機互相傳送郵件,這次再接著聊聊郵件伺服器。 概要: 1.Telnet 2.mutt 3.Thundbird 4.postfix+mysql+dovecot

LIVE555再學習 -- VLC搭建RTSP伺服器

實時流協議 RTSP 是在實時傳輸協議的基礎上工作的,主要實現對多媒體播放的控制。使用者對多媒體資訊的播放、暫停、前進和後退等功能就是通過對實時資料流的控制來實現的。 而這些播放控制功能的實現不僅需要多

LinuxNFS伺服器搭建與配置

一、NFS服務簡介  NFS 就是 Network FileSystem 的縮寫,最早之前是由sun 這家公司所發展出來的。 它最大的功能就是可以透過網路,讓不同的機器、不同的作業系統、可以彼此分享個別的檔案 (share files)。所以,你也可以簡單的將他看做是一個檔案伺服器 (file server

搭建git伺服器windows server

專案程式碼的分支管理一直是一個很頭疼的問題,因為使用的是svn。於是開始嘗試使用git。目前公共的git伺服器使用量比較廣泛就是github和碼雲。github私有庫是收費的,碼雲雖然不收費,但是使用者數量有限制。想著還是自己搭建一個git伺服器吧。搭建的環境是在window

搭建Git伺服器Ubuntu虛擬機器windows客戶端

         一直以來用Git都是用的別人的伺服器, 比如oschina 和github,  今天因為工作需要在自己的ubuntu上搭建了自己Git 伺服器, 以下記錄一些步驟和碰到的問題

Windows Server 2008 R2搭建jsp環境-Tomcat的下載安裝

流行 ext 協議 解壓縮 需要 繼續 bsp shutdown 電腦系統 1.百度搜索“Tomcat官網”,點擊有標誌的官網進入,準備下載官方正版Tomcat。 2.進入Tomcat官網之後,在左邊我們看到,Tomcat的有6,7,8這三個最流行的版本,我們可以點

自定義Git ~ 忽略特殊檔案.gitignore、配置別名、搭建Git伺服器十八

在 安裝 Git 一節中,我們已經配置了使用者名稱 user.name 和 Email 地址 user.email,實際上,Git還有很多可配置項。比如,讓 Git 顯示顏色,會讓 輸出的命令 看起來更醒目,如下: 這樣,Git 會適當地顯示不同的顏色,比如 git status

本地windows搭建git的本地伺服器

本地windows下搭建git的本地伺服器 準備工作: 本地安裝java環境,配置環境變數(略) 下載gitblit檔案,百度一大堆 開始第一步: 減壓gitblit壓縮包到某個目錄下,比如我在:H:\gitblit 第二步: 修改gitblit安裝目錄下的da

centos7搭建git伺服器多使用者版

建立倉庫並分享到組: git init --shared=group test 建立組: groupadd git 切換專案所屬組: chgrp -R git test 建立使用者1: useradd test1 -g git passwd test1 建立使用者2

Linux搭建FTP伺服器Ubuntu16.04

搞了下FTP伺服器,基本上能遇到的問題都遇到了-。-! 先說步驟: 1.安裝vsftpd軟體包 sudo apt-get install vsftpd 2.開啟配置檔案 vim /etc/vsftpd.conf 3.修改引數 一些引數可以去掉註釋啟用,為了方便,

Linux環境搭建Apache伺服器完整版

Linux下搭建Apache伺服器(完整版) 什麼是Apache? Apache Licence是著名的非盈利開源組織Apache採用的協議。該協議和BSD類似,同樣鼓勵程式碼共享和尊重原作者的著作權,同樣允許程式碼修改,再發布(作為開源或商業軟體)。需要