- 浏览: 497229 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (563)
- 工作经验 (12)
- 数据库 (13)
- Servlet (10)
- Struts2 (1)
- Spring (25)
- Eclipse (5)
- Hibernate (5)
- Eclips (8)
- HTTP (7)
- J2EE (21)
- EHcache (1)
- HTML (11)
- 工具插件使用 (20)
- JPA (2)
- 杂谈 (17)
- 数据结构与算法 (3)
- Cloud Foundry (1)
- 安全 (10)
- J2SE (57)
- SQL (9)
- DB2 (6)
- 操作系统 (2)
- 设计模式 (1)
- 版本代码管理工具 (13)
- 面试 (10)
- 代码规范 (3)
- Tomcat (12)
- Ajax (5)
- 异常总结 (11)
- REST (2)
- 云 (2)
- RMI (3)
- SOA (1)
- Oracle (12)
- Javascript (20)
- jquery (7)
- JSP自定义标签 (2)
- 电脑知识 (5)
- 浏览器 (3)
- 正则表达式 (3)
- 建站解决问题 (38)
- 数据库设计 (3)
- git (16)
- log4j (1)
- 每天100行代码 (1)
- socket (0)
- java设计模式 耿祥义著 (0)
- Maven (14)
- ibatis (7)
- bug整理 (2)
- 邮件服务器 (8)
- Linux (32)
- TCP/IP协议 (5)
- java多线程并发 (7)
- IO (1)
- 网页小工具 (2)
- Flash (2)
- 爬虫 (1)
- CSS (6)
- JSON (1)
- 触发器 (1)
- java并发 (12)
- ajaxfileupload (1)
- js验证 (1)
- discuz (2)
- Mysql (14)
- jvm (2)
- MyBatis (10)
- POI (1)
- 金融 (1)
- VMWare (0)
- Redis (4)
- 性能测试 (2)
- PostgreSQL (1)
- 分布式 (2)
- Easy UI (1)
- C (1)
- 加密 (6)
- Node.js (1)
- 事务 (2)
- zookeeper (3)
- Spring MVC (2)
- 动态代理 (3)
- 日志 (2)
- 微信公众号 (2)
- IDEA (1)
- 保存他人遇到的问题 (1)
- webservice (11)
- memcached (3)
- nginx (6)
- 抓包 (1)
- java规范 (1)
- dubbo (3)
- xwiki (1)
- quartz (2)
- 数字证书 (1)
- spi (1)
- 学习编程 (6)
- dom4j (1)
- 计算机系统知识 (2)
- JAVA系统知识 (1)
- rpcf (1)
- 单元测试 (2)
- php (1)
- 内存泄漏cpu100%outofmemery (5)
- zero_copy (2)
- mac (3)
- hive (3)
- 分享资料整理 (0)
- 计算机网络 (1)
- 编写操作系统 (1)
- springboot (1)
最新评论
-
masuweng:
亦论一次OutOfMemoryError的定位与解错 -
变脸小伙:
引用[color=red][/color]百度推广中运用的技术 ...
Spring 3 mvc中返回pdf,json,xml等不同的view -
Vanillva:
不同之处是什么??
Mybatis中的like查询 -
thrillerzw:
转了。做个有理想的程序员
有理想的程序员必须知道的15件事 -
liujunhui1988:
觉得很有概括力
15 个必须知道的 Java 面试问题(2年工作经验)
源:http://git-scm.com/book/zh/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git
评:
-----------1 服务器安装git----------
1.在有 yum 的系统上(比如 Fedora)
yum install curl-devel expat-devel gettext-devel \
openssl-devel zlib-devel
2.下面的 Git 官方站点下载最新版本源代码:
http://git-scm.com/download
3.编译并安装:
$ tar -zxf git-1.7.2.2.tar.gz
$ cd git-1.7.2.2
$ make prefix=/usr/local all
$ sudo make prefix=/usr/local install
-----------2 ssh公钥授权 ----------
1.客户端 生成 SSH 公钥
$ ssh-keygen
2.服务器 建立 git用户 保存客户端公钥
$ sudo adduser git
$ su git
$ cd
$ mkdir .ssh
$ cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys
-----------3 禁止git用户 ssh登录 shell------------
作为一个额外的防范措施,你可以用 Git 自带的 git-shell 工具限制 git 用户的活动范围。只要把它设为 git 用户登入的 shell,那么该用户就无法使用普通的 bash 或者 csh 什么的 shell 程序。编辑 /etc/passwd 文件:
$ sudo vim /etc/passwd
在文件末尾,你应该能找到类似这样的行:
git:x:1000:1000::/home/git:/bin/sh
把 bin/sh 改为 /usr/bin/git-shell (或者用 which git-shell 查看它的实际安装路径)。该行修改后的样子如下:
git:x:1000:1000::/home/git:/usr/bin/git-shell
现在 git 用户只能用 SSH 连接来推送和获取 Git 仓库,而不能直接使用主机 shell。尝试普通 SSH 登录的话,会看到下面这样的拒绝信息:
$ ssh git@gitserver
fatal: What do you think I am? A shell?
Connection to gitserver closed.
-----------4 初始化git远程仓库----------
1.
用 --bare 选项运行 git init 来建立一个裸仓库,这会初始化一个不包含工作目录的仓库。
$ cd /opt/git
$ mkdir project.git
$ cd project.git
$ git --bare init
2.
这时,Join,Josie 或者 Jessica 就可以把它加为远程仓库,推送一个分支,从而把第一个版本的项目文件上传到仓库里了。值得注意的是,每次添加一个新项目都需要通过 shell 登入主机并创建一个裸仓库目录。我们不妨以 gitserver 作为 git 用户及项目仓库所在的主机名。如果在网络内部运行该主机,并在 DNS 中设定 gitserver 指向该主机,那么以下这些命令都是可用的:
# 在 John 的电脑上
$ 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
3.
这样,其他人的克隆和推送也一样变得很简单:
$ git clone git@gitserver:/opt/git/project.git
$ cd project
$ vim README
$ git commit -am 'fix for the README file'
$ git push origin master
评:
-----------1 服务器安装git----------
1.在有 yum 的系统上(比如 Fedora)
yum install curl-devel expat-devel gettext-devel \
openssl-devel zlib-devel
2.下面的 Git 官方站点下载最新版本源代码:
http://git-scm.com/download
3.编译并安装:
$ tar -zxf git-1.7.2.2.tar.gz
$ cd git-1.7.2.2
$ make prefix=/usr/local all
$ sudo make prefix=/usr/local install
-----------2 ssh公钥授权 ----------
1.客户端 生成 SSH 公钥
$ ssh-keygen
2.服务器 建立 git用户 保存客户端公钥
$ sudo adduser git
$ su git
$ cd
$ mkdir .ssh
$ cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys
-----------3 禁止git用户 ssh登录 shell------------
作为一个额外的防范措施,你可以用 Git 自带的 git-shell 工具限制 git 用户的活动范围。只要把它设为 git 用户登入的 shell,那么该用户就无法使用普通的 bash 或者 csh 什么的 shell 程序。编辑 /etc/passwd 文件:
$ sudo vim /etc/passwd
在文件末尾,你应该能找到类似这样的行:
git:x:1000:1000::/home/git:/bin/sh
把 bin/sh 改为 /usr/bin/git-shell (或者用 which git-shell 查看它的实际安装路径)。该行修改后的样子如下:
git:x:1000:1000::/home/git:/usr/bin/git-shell
现在 git 用户只能用 SSH 连接来推送和获取 Git 仓库,而不能直接使用主机 shell。尝试普通 SSH 登录的话,会看到下面这样的拒绝信息:
$ ssh git@gitserver
fatal: What do you think I am? A shell?
Connection to gitserver closed.
-----------4 初始化git远程仓库----------
1.
用 --bare 选项运行 git init 来建立一个裸仓库,这会初始化一个不包含工作目录的仓库。
$ cd /opt/git
$ mkdir project.git
$ cd project.git
$ git --bare init
2.
这时,Join,Josie 或者 Jessica 就可以把它加为远程仓库,推送一个分支,从而把第一个版本的项目文件上传到仓库里了。值得注意的是,每次添加一个新项目都需要通过 shell 登入主机并创建一个裸仓库目录。我们不妨以 gitserver 作为 git 用户及项目仓库所在的主机名。如果在网络内部运行该主机,并在 DNS 中设定 gitserver 指向该主机,那么以下这些命令都是可用的:
# 在 John 的电脑上
$ 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
3.
这样,其他人的克隆和推送也一样变得很简单:
$ git clone git@gitserver:/opt/git/project.git
$ cd project
$ vim README
$ git commit -am 'fix for the README file'
$ git push origin master
发表评论
-
Warning: Permanently added to the list of known hosts
2018-11-01 16:35 1426源:https://stackoverflow.com/que ... -
git远程分支与本地分支回退版本
2017-10-13 15:20 2418源:http://www.jianshu.com/p/0b50 ... -
Git Stash方法
2015-08-24 00:44 435源:http://blog.sina.com.cn/s/blo ... -
github免登陆提交commit
2015-04-27 19:58 955源:https://help.github.com/artic ... -
git remote config命令 常用参数 详解
2015-04-27 19:55 1135源: git初始化之git config http://blo ... -
为毛Github的contributions贡献值不增长了
2015-04-22 17:19 498源:http://blog.csdn.net/kkklovey ... -
Git fetch和git pull的区别
2014-10-20 01:40 715源:http://blog.csdn.net/hudashi/ ... -
git process crashed in this repository earlier
2014-10-08 23:38 614源:http://blog.csdn.net/wh_19910 ... -
.gitignore
2014-10-07 19:16 351.metadata bin/ tmp/ local.prope ... -
git remote用法总结
2014-07-10 19:05 480源:http://blog.csdn.net/xiruanli ... -
怎么修改Git remote add时使用的远程仓库?
2014-07-10 19:04 818源:http://www.douban.com/group/t ... -
初学GIT 笔记 (3) GIT 的核心命令和结构
2014-07-10 18:58 371源:http://www.douban.com/group/t ... -
Git 的origin和master分析
2014-07-10 17:37 522源:http://lishicongli.blog.163.c ... -
Git Tip: git push ‘No refs in common and none specified’
2014-07-10 17:20 573源:http://blog.csdn.net/fudesign ... -
如何在window上把你的项目提交到github
2013-06-24 17:24 851源:http://michaelye1988.iteye.c ...
相关推荐
git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git笔记git...
搭建openshift需要使用到git服务器。git服务器搭建、使用。
关于ubuntu下git服务器的搭建
linux下搭建git服务器步骤,本人亲测可用。linux下搭建git服务器步骤,本人亲测可用
linux搭建git服务器
GIT笔记
Windows下搭建基于ssh的git服务器
Git服务器客户端搭建文档,Git服务器客户端搭建,Git服务器客户端搭建
改教程详细的介绍了如何在Windows系统平台下搭建GItblit服务器
git服务器搭建的时候所遇问题及解决方案
window下本地git服务器搭建与使用详解
同一台电脑上搭建GIT服务器和客户端 git 同一台电脑上搭建GIT服务器和客户端 git 服务器
(git服务器搭建+git教程+git廖雪峰)
Gitblit 是一个纯 Java 库用来管理、查看和处理 Git 资料库,相当于 Git 的 Java 管理工具。 Gitblit 支持Linux操作系统,因此 Gitblit...如果公司要搭建自己的 Git 服务器,可以使用 Gitblit 这个开源的 Git 服务器。
windows下git服务器的搭建 windows git copssh tortoisegit
一、 Windows2003下安装GIT服务器所需的软件 5 二、 Msysgit与copssh的安装 5 三、 程序配置 6 1. 服务端git支持配置 6 2. 服务端Copssh配置 6 3. 客户端git配置(配置成支持远程无密码登入) 8 四、 测试Git服务器 ...
Ubuntu下用Gitosis搭建GIT代码服务器及Eclipse下的Git操作
Git.xmind 笔记
git 教程笔记 git 教程笔记 git 教程笔记
在公司搭建自己的git服务器.zip