1. 程式人生 > >[Git]不給Github交保護費:CentOS下的私人Git的搭建方法

[Git]不給Github交保護費:CentOS下的私人Git的搭建方法

這篇文章可以結合我上一篇文章來看,也就是搭建ECS伺服器的教程:

1.首先安裝git

安裝前試著用下面這行命令看看你的伺服器上裝沒裝git,如果沒裝,再去安裝:

git --version
安裝指令:
yum install -y git


2.建立Git管理使用者,為了通用,我們將這個使用者命名為git

adduser git

3.現在建立你的git庫,並把這個庫作為公庫,改變他的所有者為剛剛設定的管理者git

git  init --bare /user/git/defaultgit.git

其中路徑和庫名由你自己決定。

別忘了更改庫的所有者,這個指令需要進入到/user/git目錄下進行。cd過去就ok:

chown git:git defaultgit.git 

4.開啟RSA認證:

輸入命令:

vi /etc/ssh/sshd_config
找到下面三行,把#去掉,以及改成相應的yes值:
1.RSAAuthentication yes     
2.PubkeyAuthentication yes     
3.AuthorizedKeysFile  .ssh/authorized_keys
如圖:

5.填入公鑰:

公鑰的獲取請看這裡:

輸入命令:

vi /home/git/.ssh/authorized_keys

把你的公鑰——id_rsa.pub檔案裡的內容複製進去並儲存。關於vi的命令的操作可以自行百度。

6.Shell安全策略:

因為大家都用git作為一個使用者(很多教程都這麼寫),因此保留他的許可權是很危險的。我們手動把git的許可權改一下:

輸入命令:

vi /etc/passwd
git:x:1001:1001:,,,:/home/git:/bin/bash  
改為:
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

7.現在試著clone你的庫。

注意Git GUI在我這個版本下有bug,會提示fetch master fail。

但是用Git Bash是可以執行成功的。

Git Bash clone指令:

git clone [email protected]你的IP:/user/git/defaultgit.git

注意修改為你設定的相應地址和庫名

第一次push東西到remote git庫,注意使用帶-u的push指令:

git push -u

試著拉取一下:

git pull

8.報錯處理

如果報錯:insufficient permission for adding an object to repository database ./object

請重新回到第三步,更改所有者為git。
第一次clone或者對remote庫進行fetch時會讓你辨認伺服器的指紋,一般來說只要yes就好了,不用管太多。

相關推薦

[Git]Github保護費CentOS私人Git搭建方法

這篇文章可以結合我上一篇文章來看,也就是搭建ECS伺服器的教程: 1.首先安裝git 安裝前試著用下面這行命令看看你的伺服器上裝沒裝git,如果沒裝,再去安裝: git --version安裝指令: yum install -y git 2.建立Git管理使用者,

Git提交到GitHub報錯Updates were rejected because the remote contains work that you do not have locally

轉自:https://blog.csdn.net/u011284073/article/details/81609707  在使用Git將本地專案上傳到GitHub上時,鍵入命令: git push -u origin master 報錯提示:Updates were reject

曹工改bugcentos,mongodb開機能自啟動,systemctl、rc.local都試了,還是不行,要不要放棄?

# 問題背景 最近裝個centos 7.6的環境,其中,基礎環境包括,redis、nginx、mongodb、fastdfs、mysql等,其中,自啟動使用的是systemctl,其他幾個元件,都沒啥問題,唯獨,這個mongodb,是死活啟動不了。 但是,我這裡說的,不是啟動不了,如果直接在shell裡敲

032-Centos安裝Git工具

瀏覽器 5.0 git 源碼包 最新 bin util b- sch 如何在CentOS 6.x/7.x上安裝git及最新版 原文來自:https://my.oschina.net/antsky/blog/514586 摘要: 介紹yum和源碼包安裝的具體方式方式一、y

自動化服務部署(三)Linux安裝Git

ima yum lan 參考 lease 指令 mage sta shu Git是一個開源的分布式版本控制系統,可以有效、高速的處理從很小到非常大的項目版本管理,是目前使用範圍最廣的版本管理工具。 這篇博客,介紹下Linux下安裝Git的步驟,僅供參考,當然,還是yum安裝

實驗CentOS構建私有CA

email quest wing echo ani tmp owin cit code 一、建立一CA頒發主機(機構)1、生成私鑰;2、自簽證書 [root@www1 ~]# (umask 077;openssl genrsa -out /etc/pki/CA/privat

Redis(一)centos安裝。

yum install gcc-cc++ wget http://download.redis.io/releases/redis-4.0.2.tar.gz cp redis-4.0.2.tar.gz /usr/local cd /usr/local tar -xvf redis-4.0.2.tar.

Redis學習01_redis安裝部署(centos) Redis學習(一)CentOSredis安裝和部署

原文: http://www.cnblogs.com/herblog/p/9305668.html Redis學習(一):CentOS下redis安裝和部署   1.基礎知識  redis是用C語言開發的一個開源的高效能鍵值對(key-value)資料庫。它通過提

解決CentOSMySQL執行select ... into outfile ...: Can't create/write to file '...' (Errcode: 13)

原因:selinux阻止寫入操作 解決:vi /etc/selinux/config # This file controls the state of SELinux on the system.

解決CentOS的 error while loading shared libraries: libmysqlclient.so.16: cannot open shared object fi

你看到的這個文章來自於http://www.cnblogs.com/ayanmw 進入別人的centos,輸入命令 mysql mysqladm都會報錯,缺少這個共享庫 libmysqlclient.so.16 。 查詢下,一般都是ldconfig 沒有找到共享庫的位置,或者 軟連結的問題,但是 都是

解決CentOS的 error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file: No such file or dir

進入別人的centos,輸入命令 mysql mysqladm都會報錯,缺少這個共享庫 libmysqlclient.so.16 。 查詢下,一般都是ldconfig 沒有找到共享庫的位置,或者 軟連結的問題,但是 都是不治本的解決方案。 查詢 此檔案 相關的檔案: updatedb loca

git基礎學習(三)版本回退 git reset --hard HEAD^(或者是commit id的前幾位)和git reflog

現在,你已經學會了修改檔案,然後把修改提交到Git版本庫,現在,再練習一次,修改readme.txt檔案如下: Git is a distributed version control system. Git is free software distributed un

【Java學習筆記】54CentOS安裝MySQL的JDBC驅動並嘗試連線

準備工作 開啟MySQL服務 [root@hostlzh lzh]# mysqld_safe & [1] 21768 [root@hostlzh lzh]# 180209 12:55:11 mysqld_safe Logging to '/var

centos配置git&gitolite

有兩篇文章介紹如何配置,怕忘記留做記錄 http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afe

centos安裝git

1.解壓git-master.zip到/opt/git-master 2.開啟$IGIT_HOME/INSTALL檔案  裡邊有這幾句 $ make configure ;# as yourself $ ./configure --prefix=/usr ;# as

3秒鐘懂你砍我RecyclerView拉重新整理和上拉載入更多(開源中國List業務流程全解析)

這裡以開源中國開源資訊頁面為例子。 這個頁面資料的url:http://www.oschina.net/action/apiv2/news?pageToken= 是這樣的 json資料的結構: NewsBean返回成功與否的code和msg。 ResultBean返回的

Ceph實踐總結之Centos RBD塊裝置客戶端的配置

    如果客戶端需要重啟,需要將掛載目錄先解除安裝,重啟之後再重新執行rbd map,以及mount 的操作,否則系統在重啟的過程中會被卡在"Umounting file system"這個操作上。解除安裝命令如下:

CentOS Hadoop 環境搭建--Hadoop

mkdir left res 修改文件 wordcount cat 創建 work tar ---恢復內容開始--- ①解壓Hadoop到自定目錄下面(這裏解壓到/opt/hadoop目錄下)   tar -zxvf hadoop-2.5.0.tar.gz -C /opt/

CentOSSAMBA的搭建

centos samba搭建一、Samba的由來:早起網絡中,檔案數據傳輸大多使用FTP這個軟件進行傳送,FTP的弊端是無法直接修改服務器上面的數據,更新數據,只能靠來回拷貝,時間久了,容易混淆。於是就有了NFS(NetworkFile System),通過共享目錄的掛載實現對Server上的檔案數據讀寫更新

Centostmux工具使用方法

repos info entos 識別 install centos6 inf wget div Tmux架構圖 Tmux使用C/S模型構建,主要包括以下單元模塊: 一個tmux命令執行後啟動一個tmux服務 一個tmux服務可以擁有多個session,一個sessio