照著 pro git book來架了個私有git 遠端庫,做個記錄。
驗證選用ssh,rsa加密方式。
首先
yum install git-core
建好後,就是建乙個遠端裸庫了:
cd /opt
mkdir git
cd git
mkdir yukonproject.git
cd yukonproject.git
git --bare init
就已經建好裸庫了
sudo adduser -m yukon12345
passwd yukon12345
su yukon12345
cd ~
mkdir .ssh
以下2步可以使本地計算機操作時免輸入密碼
首先看看本地電腦有沒有現成的秘鑰
ls -al ~/.ssh
如果有內容,就不用繼續操作了
沒有的話
ssh-keygen
-t rsa -c
"電子郵件位址"
之後一路回車就行。
在 c:/使用者/.ssh資料夾裡,
會生成id_rsa.pub 和id_rsa等。找到id_rsa.pub,這是公鑰
使用cat id_rsa.pub >> ~/.ssh/authorized_keys
或者複製id_rsa.pub 的內容到.ssh/authorized_keys
這一步為新增信任公鑰。
本地端:
cd d:\gittest
git clone [email protected]:/opt/git/yukonproject.git
收到反饋:
warning: permanently added 'yukon12345.com,114.215
.191
.81' (rsa) to the list of known hosts.
[email protected]'s password:
checking connectivity... done.
這裡已經把公鑰提交到了authorized_keys仍然要輸入密碼,查了下是由於這個檔案不能有所有者之外的寫許可權。以及.ssh也不能有之外的寫許可權而預設的authorized_keys 還有個使用者組的寫許可權。
這裡去除group的寫許可權:
su yukon12345
cd ~
chmod 700 .ssh
cd .ssh
chmod 644 authorized_keys
使得檔案許可權為如下:
-rw-
r--r
--1yukon12345
yukon12345
400mar
323:33
authorized_keys
drwxr--
---2
yukon12345
yukon12345
4096
mar3
23:33
.ssh
再次使用clone或者pull等時無需密碼。
那麼就設定成功了。以後就無需輸入可以直接操作遠端git庫。
在gittest裡會生成已個yukonproject的資料夾。裡面有.git的空目錄。往目錄裡加乙個hello.txt後:
git status
on branch master
initial commit
untracked files:
(use "git add ..."
toinclude
in what will be committed)
hello.txt
nothing added to commit but untracked files present (use "git add"
to track)
git add .
git commit
windows下會聰明的彈出記事本來叫你輸入。執行
git log
commit
025369a380e9d1409fbacadb82d2ad56ea245fe6
author: yukon12345 163.com>
date: mon mar 2
22:40:48
2015 +0800
git for new user
執行git push
來推向遠端伺服器
warning: permanently added 'yukon12345.com,114.215.191.81' (rsa) to the list of known hosts.
[email protected]'s password:
counting objects: 3, done.
writing objects: 100% (3/3), 214 bytes | 0 bytes/s, done.
total 3 (delta 0), reused 0 (delta 0)
error: unpack failed: unpack-objects abnormal exit
error: insufficient permission for adding an object
to repository database ./objects
fatal: failed to write object
to [email protected]:/opt/git/yukonproject.git
! [remote rejected] master -> master (n/a (unpacker error))
error: failed to push some refs to
'[email protected]:/opt/git/yukonproject.git'
這裡出現了報錯,看了下是由於許可權問題導致的。
ls -al
total 16
drwxr-xr-x.
3 root root 4096 mar 2
22:28
.dr-xr
-xr-x
.22 root root 4096 feb 17
17:27
..drwxr-xr
-x3 root root 4096 mar 2
22:29 git
將伺服器庫的所有者或者所有者組許可權修改:
chown -r yukon12345 /opt/git
chgrp yukon12345 /opt/git
再次push後就沒有報錯了
如下格式:
git
reset--
help
這句話在windows下直接彈出幫助的網頁。 git 建立遠端版本庫
一 github遠端版本庫 1 建立ssh key windows ssh keygen t rsa c youremail example.com 2 連線版本庫git remote add origin git github.com ltt2725738034 ll.git 3 轉殖版本庫 gi...
使用Git與Github建立自己的遠端倉庫
早就想建立乙個自己的遠端倉庫,方便發布到nuget上,自己用也好,專案組用也好,都方便。今天抽了個時間建了個倉庫,隨便記下溜方便後來的人。首先需要到 github 上註冊自己的帳號。然後點選建立自己的專案,如下所示。名字和描述自己選,如果需要readme檔案就打上勾,個人建議打上。windows點我...
使用Cocoapods建立私有庫的流程
在公司開發framework,記錄一下關於cocoapods製作私有庫的過程 1 建立私有repo倉庫,比如我的是 並初始化 設定開發語言,以及readme pod repo add lspcustombasekit 這條指令 會在 cocoapods repos目錄下看到 lspcustombas...