项目托管软件使用——Git

项目托管软件使用——Git

git简介

git是创建linux的牛人Linus,觉得svn、cvs不好用然后自己花费两周写出来的,不得不佩服~

  • 集中式版本
    CVS及SVN都是集中式的版本控制系统,也就是说所有东西集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,写完了再推上去。
  • 分布式
    每个人的电脑上都是一个完整的版本库,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。

git安装

sudo apt-get install git
sudo apt-get install git-core

或者自己去git官网下载源码。然后

./config
make
make install 

git版本库的创建

我们的git在本地电脑工作的时候有三个概念,一个是工作区,一个是缓存,一个是仓库,我们写代码在工作区,代码写好了首先提交到缓存中git add (文件名) ,提交到缓存之后需要提交到本地仓库git commit -m "(注释)"
另外的就是远程仓库了需要push,后面讲解。

  • 创建仓库
git init 

使用命令之后就会在文件目录中出现一个.git目录

git 版本回退

当我们进行多次提交的时候,如果一旦出错,我们还可以进行版本回退。怎么做呢?
在这里插入图片描述
如图,我们可以看见几个版本,因为我提交了几次,那么过我想回到最开始的版本咋办。

  • 查看日志
git log
  • 获取版本id
commit f627a982d447c244ca8d44adfba69362ad7d3322
  • 回退
git reset --hard f627a(这是版本id)

上面的hard就是一个指针,指向版本号的,所以回退很快,如下图表示。

  • 工作区和暂存区
    在这里插入图片描述
    上面讲git版本库的时候已经讲了,上图就是基本的流程,stage就是git本地仓库,master是远程仓库。

git删除文件

git pull (首先拉去git仓库,跟本地保持一致)
git rm file(文件名)
git commit -m "delete"
git push

git提交文件到暂存区

git add file(文件名)
git commit -m "add"
git push

git提交文件到仓库

git commit -m "(注释)"

git 提交到远程仓库

git push

git查看连接的远程库

git remote -v

git删除跟远程的连接

git remote rm origin

git添加远程库

git remote add origin (ssh链接)

git验证

说到验证,我们就要说到ssh,ssh是加密的传输协议,跟浏览器的ssl一样,都是应用层的协议,所以几乎都用到了机密的环节,所以我们再配置git的时候需要进行一系列的配置。

  • 生成公钥私钥
ssh-keygen -t rsa -C "6762641@qq.com"
  • 添加私钥到ssh-agent上
ssh-add ./id_dsa
  • 复制公钥到git上
cat id_rsa.pub

添加到下面
在这里插入图片描述

ssh-agent命令

其实ssh-agent就是一个密钥管理器,运行ssh-agent以后,使用ssh-add将私钥交给ssh-agent保管,其他程序需要身份验证的时候可以将验证申请交给ssh-agent来完成整个认证过程。

ssh-agent bash

ssh-keygen命令

ssh-keygen -t rsa -C "6762641@qq.com"
-b:指定密钥长度; 
-e:读取openssh的私钥或者公钥文件; 
-C:添加注释; 
-f:指定用来保存密钥的文件名;
-i:读取未加密的ssh-v2兼容的私钥/公钥文件,然后在标准输出设备上显示openssh兼容的私钥/公钥;
-l:显示公钥文件的指纹数据;
-N:提供一个新密语; 
-P:提供(旧)密语; 
-q:静默模式; 
-t:指定要创建的密钥类型。

ssh-add命令

将密钥添加到ssh-agent高速缓存中,ssh-agent是管理密钥的

ssh-add ./id_rsa

把密钥再ssh-agent删除

ssh-add -d  ./id_rsa

查看密钥

ssh-add -l



如何从0-1

  • 给自己的电脑起名字

因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。

git config --global user.name "yjc"
git config --global user.email "6762641@qq.com"
  • 下载git
sudo apt-get install git
sudo apt-get install git-core

或者自己去git官网下载源码。然后

./config
make
make install 
  • 初始化本地仓库
git init
  • git验证
ssh-keygen -t rsa -C "6762641@qq.com"
ssh-add ./id_dsa
cat id_rsa.pub(将公钥复制到git页面上)

在这里插入图片描述

  • 把ssh配置成默认的
ssh-keygen
  • 创建文件
touch a.c b.c
  • 提交到暂存区
git add a.c b.c
  • 提交到本地仓库
git commit -m "first file"
  • 连接远程仓库
git remote add origin git@git.kscampus.io:cpp-tasks/yangjinchai.git

这里加了之后可以查看一下加上了没

git remote -v
  • 提交代码
git push -u origin master
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值