Git学习(一)


Git&GitHub

Git是一款免费、开源的分布式版本控制系统。

Github是用Git做版本控制的代码托管平台。也就表示这样的代码托管平台可以有很多个,git和github不是一一对应关系。比如,听说过的还有“码云”,等等。

Git是分布式版本控制系统,就是将同一个Git仓库,分布到不同的电脑上。这样工作时就必须找一台电脑充当服务器仓库的角色,每天24小时开机,其他每个人都从这个服务器仓库中拉取别人的提交,并且各自把各自的提交推送到这个服务器仓库里。但这是很不方便的,如果有个远程的免费的仓库可以使用才是最好的。

GitHub就是提供Git仓库托管服务的,只要注册一个GitHub账号,就可以免费获得Git远程仓库。也就是有了这个远程仓库之后,一起合作的小伙伴拉取或是提交都是面对这个远程仓库就可以了。


什么是Git

Git是目前世界上最先进的分布式版本控制系统(没有之一)。

什么契机下,产生的版本控制系统:

  • 如果几个同事一起合作编辑一个文件,如果全靠人工的话,就需要保留每个时期,每个人的版本,以便之后查看,修改。还得整理出包含每个改动的最终版,这个最终版只要有人改动,就得找到那个改动的地方,然后更新。总之,整个过程是非常耗费时间和人力的。
    由此需要,产生了版本管理系统,它可以自动帮我们记录每次文件的改动,还可以让同事协作编辑,也不用自己管理一堆类似的文件,也不需要把文件传来传去。
  • 知道了版本控制系统,那什么是分布式呢?
    与分布式对应的是集中式。
    集中式就是将整个文件统一放在特定服务器上,工作的时候先要从这个服务器上获取到最新版本,然后再进行自己的编辑修改,完了再提交到此服务器上。所以如果没有网络,就没法工作了。
  • 分布式是每个人电脑上都有完整版本,没有网络也可以工作,可以同事之间交换修改部分,也可以统一设立中央服务器,然后得到每个人修改的记录。
    先简单这样有个概念,之后再自己实验。

如何安装Git

服务器端

1.先从yum安装git

yum -y install git

2.在需要的位置创建一个裸仓库(最后以.git结尾)

cd /usr/local
mkdir git
cd git
git init 

3.创建一个git用户并赋予密码

useradd git
passwd git

4.赋予git用户权限

chown -R git:git  learngit.git

5.禁用git用户shell登录(一定要禁用)

vi /etc/passwd

将git用户修改为如下(一般在最后一行)

git:x:1000:1000::/home/git:/usr/bin/git-shell

其他的不用改。服务端完成。


客户端

我使用的客户端为git for windows

  • 1.安装,双击下一步,直到完成。

  • 2.进入想要将项目放置的目录

  • 3.创建用户

git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
  • 4.创建秘钥(用来防止每次commit或push都需要密码)
ssh-keygen -t rsa -C "你的邮箱"
  一直回车....
  • 5.将秘钥加入服务器列表

  • 5.1 取得公钥(本地)

在当前目录下(若未改变目录,到C:\Users\Administrator.ssh\id_rsa.pub)找到.ssh目录下的id_rsa.pub文件,打开,复制其中内容.

  • 5.2 将公钥加入服务器列表(服务器)
    CentOS 7默认列表在/root/.ssh/authorized_keys,使用vi 编辑此文件输入刚才复制的内容,保存退出。
vi /root/.ssh/authorized_keys
    //i修改
    //esc后输入:wq保存退出
  • 5.3 可以跳过此步,若克隆远程项目多次仍然需要密码,则检查上一步是否有错误,没有错误后,再配置这一步(服务器)

在/home目录下创建.ssh目录,进入,创建authorized_keys文件

cd /home
mkdir .ssh
cd .ssh
vi authorized_keys
加入我们的公钥后保存退出。
    1. 克隆项目
git clone git@101.101.101.101:/usr/local/git/learngit.git

到此,就成功的从服务器上克隆下我们所需要的项目。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,463评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,868评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,213评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,666评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,759评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,725评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,716评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,484评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,928评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,233评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,393评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,073评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,718评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,308评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,538评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,338评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,260评论 2 352

推荐阅读更多精彩内容

  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 13,649评论 9 163
  • Git常用语法 [TOC] Git简介 描述 ​ Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,...
    君惜丶阅读 3,506评论 0 13
  • 提笔为谁作 , 思君缱绻冷难着。 浓情消离索, 青春作伴今非昨。 且拭相思泪, 云中何人唱九歌: 若有人兮...
    风楚阅读 511评论 2 5
  • 全世界有上千种程序开发语言,其实自己要发明一种语言也不是很难的事情。但问题是,为什么需要新语言,尤其是通用软件开发...
    点融黑帮阅读 1,591评论 1 19
  • 前几天考研成绩下来了,本以为成绩无望,可以放心的去工作了,可是上天又开了一个玩笑,考了286分。15年分数线28...
    锋利剑阅读 183评论 1 0