【Linux 学习笔记】戏说Git (上)

本文为《廖雪峰Git教程》学习笔记,原地址:

http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

萌新入门,略有心得,戏说一番。

本章包括两部分内容,

1. git 本地库中文件的添加和提交;

2. 连接github 添加远程库

先来个正版概念镇个贴:

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

假设,

我是一个单机游戏爱好者(好吧这不是假设。。)

那么Git 就可以理解为存档的文件夹“save”

你每个游戏进度的存档就可以理解为程序每个不同的版本

Git负责把这些乱七八糟的存档文件管理起来

安装

在linux中,可以直接输入git查看是否安装

若是没有安装,它会弹出提示你输入:

sudo apt-get install git

创建版本库:

$ mkdir learngit     // 创建一个目录 作为版本库

$ cd learngit           // 跳转到该目录下

$ git init  // 对该目录进行初始化,目录下会多出一个.git 文件

现在就可以把 learngit 文件夹 作为一个版本库来用了。

接下来,我们开始向版本库里写文件。

在当前目录learngit中,创建一个GGS.txt 文件,内容为:

Good good study !!

现在库中多了一个文件,git 已经意识到,我们利用如下命令检查一下当前git 的状态:

$ git status

此时的状态可以理解为git 意识到版本库中文件发生了改变。

接下来有两步操作:

第一步,add,键入:

git add GGS.txt

回车后我们发现没有任何反应,没有任何反应就是最好的反应,代表add成功。

git status 查看一下状态

这里看到add成功,文件名变成了绿色。

此时文件进入了暂存区,并没有提交到版本库中。

第二步,commit,提交,键入:

git commit -m " add GGS.txt"  // 这里-m“..." 表示添加版本修改注释,引号中写当前版本做了哪些修改,方便管理。

如此,GGS.txt 文件就提交到了库中。

前面提到了暂存区,进行add 操作之后,文件会进入暂存区,可以理解为待上传的队列,我有一批修改的文件等待commit,于是我们把他们放在一起,最后提交。

小结,

将文件提交到版本库中:

先add, 再commit。

那么如何实现远程仓库和本地仓库的同步呢?

接下来说一说,github 的生存向用法。

首先注册账号,进入到设置页面:

settings --->  Personal Settings  --->  SSH and GPG keys  ---> new SSH key

Title 随便写一个 比如 my ssh key

key的填写:

回到Linux的主目录下,找找看有没有 .ssh 文件夹

$ cd /home/recycle    // recycle 是系统用户名

$ ls -al

如果没有就进行创建:

$ ssh-keygen -t rsa -C "[email protected]"
//  引号中填写邮箱

可以不用设置密码,一路回车

这是你有了 .ssh 文件夹,打开它,里面有两个文件

这俩文件就是ssh key的密钥对

id_rsa 是私钥 不能泄露出去

id_rsa.pub 是公钥,可以放心地告诉任何人

打开公钥 id_rsa.pub 将其内容复制进,github网页里的my ssh key中,确认提交。

这样,github里的账户就有了你本地计算机的钥匙,可以自由出入,上传下载数据了。

接下来实验如何添加远程库

进入github 网页

回到本地的仓库,

$ git remote add origin [email protected]:wly95/testing.git

这里origin是远程库的名字,可以改为其他,习惯用origin

wly95 是我的github 用户名

testing.git 是刚建立的 repository

上传:

$ git push -u origin master

第一次进行这样的操作时,会出现ssh警告,确认你的身份,键入yes,就可以了。

进入网页就可以看到,在testing中,有着与本地仓库一样的文件,上传成功。

下载(克隆)

$ git clone [email protected]:wly95/testing.git

之后会在当前目录中多处一个testing 目录,打开之后:

基础命令总结:

$ git init // 初始化git 仓库

$ git add xxx.xxx // 添加文件进入队列(暂存区)

$ git commit -m "xxxxxxx" // 提交当前暂存区内容进入仓库

$ git remote add origin [email protected]:username/gitname.git
// 建立本地与远程仓库的关联

$ git push origin master // 本地库所有内容上传到远程库

$ git clone [email protected]:username/gitname.git
// 下载(克隆)远程库内容到本地

时间: 2024-10-07 01:02:27

【Linux 学习笔记】戏说Git (上)的相关文章

linux学习笔记--服务器突然连不上。 要从哪些方面排查?

1.判断是不是大面积服务器问题.如果是就是机房问题. 2.如果只有这一台连不上,就ping下 如果不通的话.通过远程控制卡连到终端看屏幕提示.或者让机房人员接显示器 查看屏幕提示,如果能登陆就登陆进去看看 IP网卡情况. 3.根据预先灾备计划,如果长时间修复不了,可启动备机接管. 最重要的是: 不要拼死调节,业务持续服务更重要. linux学习笔记--服务器突然连不上. 要从哪些方面排查?,布布扣,bubuko.com

学习笔记:Caffe上LeNet模型理解

学习笔记:Caffe上LeNet模型理解 Caffe中用的模型结构是著名的手写体识别模型LeNet-5(http://yann.lecun.com/exdb/lenet/a35.html).当年美国大多数银行就是用它来识别支票上面的手写数字的.能够达到这种商用的地步,它的准确性可想而知,唯一的区别是把其中的sigmoid激活函数换成了ReLU. 为什么换成ReLU,上一篇blog中找到了一些相关讨论,可以参考. CNN的发展,关键就在于,通过卷积(convolution http://deepl

linux学习笔记(一)-文件目录相关的命令&&文件通配符

一.几个命令概述 1.查看目录以及目录底下的文件:ls(-a显示隐藏文件:-d显示目录本身:-l显示详细内容:-R递归显示,即把子目录的文件也显示出来:-h以更加被人类理解的格式显示,比如显示文件大小的时候用M为单位显示:-i显示文件索引ID) 2.查看文件内容:cat,head,tail,less,more,tac cat:将文件连接起来,输出在屏幕上,可接多个文件(-E:显示隐藏的换行符:-n:显示出行号) head:默认查看文件的前10行(-n#:查看文件的前#行.空白行也是一行) tai

Linux学习笔记——如何使用echo指令向文件写入内容

0.前言 本文总结如何使用echo命令向文件中写入内容,例如使用echo指令覆盖文件内容,使用echo指令向文件追加内容,使用echo指令往文件中追加制表符. echo向文件中输出内容的基本方法是使用IO重定向指令--">",默认情况下echo输出到标准输出中,使用>指令可重定向输出到文件中. 1.echo指令基本用法 [1]Linux官方用户手册--echo指令 [2]输入指令获得帮助 sudo echo --help 返回内容如下 用法:echo [短选项]... [字

linux学习笔记--vim程序编辑器

1,在linux系统中使用文本编辑器来编辑自己的linux参数配置文件是一件很重要的事情,因此系统管理员至少应该要熟悉一种文本编辑器. 2,不同的linux distribution各有不同的附加软件,linux命令行界面下的文本编辑器有Emacs,pico,nano,joe与vim 3,学习vim的重要性 (1)所有的UNIX Like系统都内置vi文本编辑器,其他的文本编辑器不一定存在 (2)很多软件的编辑接口都会主动调用vi (3)vim具有程序编辑的能力,可以主动以字体颜色辨别语法的正确

Linux学习笔记三:Linux的权限处理命令

1.改变文件或目录权限  chmod 语法:chmod [{ugo} {+-=} {rwx}] [文件或目录] 或 [mode] [文件或目录] 第一种语法中: 这里的u是所有者,g是指所属组,o是指其他人 +是指增加权限,-是指减少权限,=是指赋予权限 r是指读权限,w是指写权限.x只是执行权限 第二种语法中: 在这里,r的值是4,w的值是2,x的值是1. 这里写的mode,是指一组数字.如:421.这里的421,是指所有者所拥有权限的数字总和是4,所属组所拥有权限的总和是2,其他人所拥有权限

Linux学习笔记033_10

网卡命名: eth0,eth1 子接口(一个网卡上多个IP):eth0:1,eth0:2 ifconfig: 查看网卡信息 ifup ethx:开启网卡 ifdown ethx:关闭网卡 配置网卡: 图形 命令: ONBOOT为yes表示启动计算机时通过网卡 全局网络配置: 第一行为开启ipv4,第二行为开启ipv6,第三行为计算机名,注意计算机名在DNS要解析到,如clc.com 可以加一行:GATWAY=192.168.1.254,不过以network-scripts中的网关优先级高 DNS

Linux学习笔记--vi

在Linux上使用vi命令修改一个文件内容的时候,发现无法保存,每次写完使用“:q!”命令可以正常退出但是使用":wq!"命令保存文件并退出时出现一下信息提示: E212: Can't open file for writing Press ENTER or type command to continue 出现这个错误的原因可能有两个: 1.当前用户的权限不足 2.此文件可能正被其他程序或用户使用. 一般错误原因都是前者,解决方案是在使用vi命令打开文件时,前面加上sudo来临时提供

linux学习笔记2-linux的基本命令

第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些基本的控制台命令 ============================================== 连接远程机器 以指定用户名登陆的命令为:ssh [email protected] (一般情况都需要指定用户名) 以指定用户名和指定端口登陆的命令为:ssh [email protected] -p XXX 断开连接的命

Linux学习笔记033_8文本处理

less: 一次显示不完是可以向上(n),向下翻页(N),并且可以查找:/keyword,v进入编辑器 cat: 一次显示完文本内容 more: 回车向下翻一行,空格向下翻一页,但是不能向上翻页 nl: 显示行号的输出 head: 显示文件的前10行 head -n 15 a: 显示文件a的前15行 tail: 显示文件的最后10行 tail -n 15 a: 显示文件a的后15行 :查看日志的最后10行 :实时显示最后10行,如果没有-f则为静态 :提取11到20行保存在文件中 grep:(正