git的学习笔记(使用远程仓库)
2016-05-11 21:11
281 查看
远程仓库
git属于分布式版本控制,所有的电脑没有主次之分,但是,一般还是会有一台计算机作为服务器来供其他计算机clone并进行修改与推送,但是,你会感觉这个跟svn没什么区别,但是,git允许每台计算机都克隆整个工作文件来进行修改,svn则只允许连接服务器进行修改,但是绝不允许先克隆到本地的。远程服务器有两个选择:
1.自己构建一个git服务器
2.使用github
首先,使用远程仓库需要你首先进行密钥的创建git keygen -t rsa -C “你的email”】
之后,你会在用户目录下的。ssh文件夹里,存在两个文件
id_rsa
id_rsa.pub
以上两个文件叫做ssh的密钥对
第一个为私钥,不要泄露出去,第二个位公钥,可以给其他人
1.连接github,创建仓库
创建一个github账号,在用户设置里面点击添加密钥,给你的密钥起一个容易辨别的名字,将id_rsa.pub文件使用文本编辑器打开,复制到下方的输入域中,点击add密钥的问题
公钥的话你可以添加到github,这允许你的设备连接github进行操作,你可以添加多个公钥,分别对应你的公司电脑,个人电脑等等github的问题
github上面的代码仓库,是别人可以看到的,也可以复制的,别人可以随意下载你的代码,如果不想让比如人看到,你可以成为github的人民币玩家,或者使用git服务器github新建一个仓库
填入一个仓库name,最好在下面默认创建README文件打勾,防止之后上传你的文件出错,然后一路默认即可关联githuab与本地仓库
在你的计算机上关联github并把你的文件推到github上面
git remote add origin git@github.com:你的githuab仓库名字比如nber1994/jty.git
github上远程库的名字默认为origin
然后,把你的仓库推到github
git push -u origin master//-u表示将文件推送到github上时并把远程的master分支与本地的master分支关联起来
然后你会在github上看到你的文件已经出现在github上了
2.搭建自己的git服务器
其实与计算机git用户没有区别,只是供大家提交和交换修改使用使用git,
1.
sudo apt-get install git//安装git2.
sudo adduser git//创建一个git用户3.
收集起来你允许使用git服务器的公钥,将这些公钥复制到home/git/.ssh/authorized/_keys文件里,一行添加一个。
4.
初始化一个git仓库在你想当作git仓库的目录里比如srv(系统启动时可以访问的数据库目录),键入
sudo git init –bare /srv/prod.git//这里的bare表示创建一个裸体仓库,哈哈,就是没有工作区的仓库,因为用不到嘛:P 另外,仓管一般以.git结尾哦
5.
把git仓库的所有者改为gitsudo chown -R git:git prod.git
6.
禁止使用shellchuyuanquankaolv一般禁用登录shell
只需要:
把vi /etc/passwd文件里 git:x:1001:1001:,,,:/home/git:/bin/bash 改为: git:x:1001:1001:,,,:/home/git:/bin/bash/git-shell 此后,用户可以通过ssh使用git,但是shell用户已登录就会自动退出
7.
git用户可以clone远程仓库的内容了git clone git@github:/srv/prod.git
哒哒!现在可以使用git服务器了!!!!:P
相关文章推荐
- weblogic,Jboss 不支持Jmxproxybeat
- Python greenlet
- 递减剔除数组元素算法
- iOS之CoreData基本使用以及简单封装
- ECMAScript 6笔记(Symbol, Proxy 和 Reflect)
- c++第五次作业
- php面向对象 继承
- Linux命令——文件和目录管理
- ZZULI 1876: 蛤玮的项链 Hash + 二分
- c++运算符重载
- 【LeetCode-342】 Power of Four(C++)
- ecshop二次开发--节日关怀
- 最大连续数列和
- 传值方式
- 简单大数相加
- poj2513 Colored Sticks (欧拉通路+Trie树+并查集)
- OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔与图片尺寸缩放
- 实验三 进程调度模拟程序
- php 面向对象
- 出差(3~一)