Git学习笔记

突然想记录一下git的使用,使得yan在需要的时候不用到处找了。

Git–版本控制系统

在我的理解下,git就是一个文件夹,我利用仓库来管理它,这个仓库记录着你的文件夹每一笔增删改查,同时还能与远程仓库进行同步,使得其他人也可以进行仓库修改什么的,并最终同步到你的本地文件夹。

  1. git的安装

    这里我用的是ubuntu下终端安装,在ubuntu下打开终端,执行命令 sudo apt-get install git
    待安装成功后 执行命令检查是否成功 git --version ,结果如图所示:
    在这里插入图片描述

同时我为git配置用户名和邮箱
$ git config --global user.name “chenfanjin”
$ git config --global user.email chenfangjincomedy@gmail.com
这个主要体现在每次提交的记录会显示,是用户谁提交的。

  1. git 的工作流程

git流程我的理解下主要概括为一个流水线,本地文件夹->缓存区->本地仓库->远程仓库
首先你得有个文件夹,命名为yan,并进入到文件夹中:
在这里插入图片描述
第二,我们利用git init命令进行仓库管理这个文件夹,如图所示,出现.git就表示,git工具已经对你的文件夹yan进行管理
在这里插入图片描述
第三,有了文件夹,以及背后一个仓库管理,那么我们对这个文件夹开始增操作,例如touch readme.txt新建一个readme.txt文档,gedit 增加内容为this is git’s example。并提交至缓存区,同时我们用git status来查看目前仓库状态:
在这里插入图片描述
图中的意思表示,文件夹出现了新文件readme.txt,
最后我们将暂存区的文件夹提交至仓库。
在这里插入图片描述
最终结果显示,本地仓库中发生了一个文件变化,一个文件新增。
至此,本地的仓库最简单的流水线完成了。
3. 辅助操作
我把其他操作定位辅助操作,例如,版本回退,撤销修改,删除文件

A.版本回退

我对readme.txt进行添加内容hello yan操作,然后提交到仓库中,而这个时候我们可以通过git log进行查看提交历史纪录
在这里插入图片描述

但是此时我发现,增加的内容有错误,我要回到上一个版本,这个时候通过指令
git reset --hard HEAD^ 那么如果要回退到上上个版本只需把HEAD^ 改成 HEAD^^ 以此类推。那如果要回退到前10个版本的话,我们可以使用命令操作:git reset --hard HEAD~10 即可。
如图所示:
在这里插入图片描述
B.撤销操作
如果我劈里啪啦在readme.txt修改了一堆内容,但是我还没有添加到暂存区,而内容有点问题,我想回到原来的版本,但是我不记得修改了哪些内容。我们可以通过命令git checkout – readme.txt
在这里插入图片描述
C. 删除文件
本地文件的删除 rm readme.txt 同样需要commit提交到仓库中进行同步。

5. 远程仓库
远程仓库我的理解下,可以实现与本地仓库同步,同时可以与他人共同协作一个任务
a.注册登陆github网页
b.创建新仓库
c.通过终端执行,并输入github的账号和密码,进行同步本地文件夹
(这个时候会报错找不到仓库,于是执行ssh-keygen -C "yourname@gmail.com" -f ~/.ssh/github)会让你输入密码。
然后在将cd 到产生的密钥文件,查看并复制添加到远程仓库中
在这里插入图片描述

在这里插入图片描述
登陆github可以看到,之前写的readme.txt已经同步过去了
在这里插入图片描述

  1. 分支
    分支就体现多人协作了,例如我现在是一个yan同事,我想在readme.txt增加内容但是不知道能不能增加到yan的readme.txt,,因此我创建分支,执行命令git checkout -b comedy
    在这里插入图片描述
    通过git branch指令我们可以得出,目前所在分支,以及有哪些分支

现在我们进行增加内容 hello comedy
在这里插入图片描述
再同步至github
在这里插入图片描述
在这里插入图片描述

而此时想将分支合并主分支master,那么在终端执行合并并同步即可。
首先执行指令git checkout master切换回主分支,然后执行指令合成comedy分支

在这里插入图片描述
然后,删除分支comedy,进行同步到github上去
在这里插入图片描述
可以看到github上的master的分支上comedy的增加内容已经同步过来了。
在这里插入图片描述
这里看到GitHub的分支还在,若不想有,可以在本地文件commit的之前就融合提交。

那么协作就体现在,在此之前还有人提交了分支更新,提交冲突,你就先需要拉取git pull 下来,同步后再上传github。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值