簡體   English   中英

通過Ubuntu 12.04中的tomcat7共享Git存儲庫

[英]Git repository sharing through tomcat7 in ubuntu 12.04

我已經安裝了tomcat7 git-core jenkins。

我正在嘗試在git存儲庫中進行本地構建作業。 誰能幫助我與所有操作共享git存儲庫-git clone,pull,push,tag,revisions等,

我不知道我在哪里分享git。

即使共享目錄,我也可以克隆,從分支中提取更改,但不能推送更改。

您可以列出與tomcat7共享git repo的過程嗎?

您可能會仔細閱讀以下教程,並且可以實現所需的目標: https : //www.tutorialspoint.com/jenkins/jenkins_setup_build_jobs.htm

很少的指導:確保所有工具都到位,並且您具有超級用戶訪問權限:使用以下命令:

$ sudo adduser git
$ su git
$ cd
$ mkdir .ssh && chmod 700 .ssh
$ touch .ssh/authorized_keys && chmod 600 .ssh/authorized_keys

接下來,您需要將一些開發人員SSH公共密鑰添加到git用戶的authorized_keys文件中。 假設您有一些受信任的公用密鑰,並將其保存到臨時文件中。 同樣,公共密鑰如下所示:

$ cat /tmp/id_rsa.john.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCB007n/ww+ouN4gSLKssMxXnBOvf9LGt4L
ojG6rs6hPB09j9R/T17/x4lhJA0F3FR1rP6kYBRsWj2aThGw6HXLm9/5zytK6Ztg3RPKK+4k
Yjh6541NYsnEAZuXz0jTTyAUfrtU3Z5E003C4oxOj6H0rfIF1kKI9MAQLMdpGW1GYEIgS9Ez
Sdfd8AcCIicTDWbqLAcU4UpkaX8KyGlLwsNuuGztobF8m72ALC/nLF6JLtPofwFBlgc+myiv
O7TCUSBdLQlgMVOFq1I2uPWQOkOWQAHukEOmfjy2jctxSDBQ220ymjaNsHT4kgtZg2AYYgPq
dAv8JggJICUvax2T9va5 gsg-keypair

您只需將它們附加到git用戶的.ssh目錄中的authorized_keys文件中:

$ cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys
$ cat /tmp/id_rsa.josie.pub >> ~/.ssh/authorized_keys
$ cat /tmp/id_rsa.jessica.pub >> ~/.ssh/authorized_keys

現在,您可以通過使用--bare選項運行git init來為它們設置一個空的存儲庫,該初始化將在沒有工作目錄的情況下初始化存儲庫:

$ cd /opt/git
$ mkdir project.git
$ cd project.git
$ git init --bare
Initialized empty Git repository in /opt/git/project.git/

然后,人們可以將其項目的第一個版本添加到該存儲庫中,方法是將其添加為遠程版本並增加分支。 請注意,每次您要添加項目時,都必須有人在計算機上安裝外殼並創建裸存儲庫。 讓我們使用gitserver作為在其上設置git用戶和存儲庫的服務器的主機名。 如果您在內部運行它,並且為gitserver設置DNS使其指向該服務器,則可以按原樣使用命令(假定myproject是其中包含文件的現有項目):

$ cd myproject
$ git init
$ git add .
$ git commit -m 'initial commit'
$ git remote add origin git@gitserver:/opt/git/project.git
$ git push origin master

在這一點上,其他人可以將其克隆下來,然后將更改推回原來的操作一樣簡單:

$ git clone git@gitserver:/opt/git/project.git
$ cd project
$ vim README
$ git commit -am 'fix for the README file'
$ git push origin master

使用這種方法,您可以為少數開發人員快速啟動並運行讀寫Git服務器。

您可以使用chsh為用戶編輯外殼程序:

$ sudo chsh git  # and enter the path to git-shell, usually: /usr/bin/git-shell

git用戶只能使用SSH連接來推送和拉取Git存儲庫,而不能將其打包到計算機上。 如果嘗試,您會看到這樣的登錄拒絕:

$ ssh git@gitserver
fatal: Interactive git shell is not enabled.
hint: ~/git-shell-commands should exist and have read and execute access.
Connection to gitserver closed.

資料來源:git-scm

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM