廖雪峰的Git使用教程

  • 0 Git简介
    • 0.1 Git的诞生
    • 0.2 分布式和集中式
  • 1 安装Git
  • 2 创建版本库、添加文件到版本库
  • 3 时光穿梭机
    • 3.1 查看文件和版本库状态
    • 3.2 回退或前进到任意版本
    • 3.3 工作区和暂存区
    • 3.4 管理修改
    • 3.5 撤销修改
    • 3.6 删除文件
  • 4 远程仓库
    • 4.1 添加远程库
    • 4.2 从远程库克隆

0 Git简介

https://www.liaoxuefeng.com/wiki/896043488029600/896067008724000

0.1 Git的诞生

https://www.liaoxuefeng.com/wiki/896043488029600/896202815778784

0.2 分布式和集中式

https://www.liaoxuefeng.com/wiki/896043488029600/896202780297248

1 安装Git

https://www.liaoxuefeng.com/wiki/896043488029600/896067074338496

2 创建版本库、添加文件到版本库

https://www.liaoxuefeng.com/wiki/896043488029600/896827951938304

*一个常见的报错和解决方案

由于.git文件夹可能处于隐藏状态,我们必须让VSCode显示隐藏文件,方法可以参见这个链接:https://blog.csdn.net/weixin_44489823/article/details/112728283

回到正题:

#将文件从工作区提交到暂存区
git add readme.txt
#将文件从暂存区提交到版本库
git commit -m <message>

3 时光穿梭机

3.1 查看文件和版本库状态

https://www.liaoxuefeng.com/wiki/896043488029600/896954074659008

#查看文件和版本库的状态
git status

3.2 回退或前进到任意版本

https://www.liaoxuefeng.com/wiki/896043488029600/897013573512192

Git必须知道当前版本是哪个版本,第一种索引办法是使用版本号;第二种是使用相对版本位置,在Git中,用HEAD表示当前版本,当前版本的上一个版本是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

#切换到指定的版本,其中HEAD为当前版本,当前版本的上一个版本是`HEAD^`
#上上一个版本就是`HEAD^^`,当然往上100个版本写成`HEAD~100`
git reset --hard <命令索引>
#查看提交历史,获取命令索引
git log
#查看命令历史,获取命令索引
git reflog

3.3 工作区和暂存区

https://www.liaoxuefeng.com/wiki/896043488029600/897271968352576

回顾:
查看某个版本和之前版本的差异,可以使用git diff readme.txt这个命令。用git diff HEAD -- readme.txt命令可以查看工作区和版本库里面最新版本的区别。其中,readme.txt应该被替换为您的文件名。

#查看某个版本和之前版本的差异
git diff readme.txt
#查看工作区和版本库里面最新版本的区别
git diff HEAD -- readme.txt

3.4 管理修改

https://www.liaoxuefeng.com/wiki/896043488029600/897884457270432

3.5 撤销修改

https://www.liaoxuefeng.com/wiki/896043488029600/897889638509536

这一节和版本回退最大的区别就在于,版本回退指的是“在工作区做了修改,并且已经加入到暂存区,并且还提交到了版本库”,而撤销修改指的是“在工作区做了修改,但没有加入到暂存区,或者在工作区进行了修改且已加入暂存区,但没有推送到版本库当中”。

针对上述场景一的解决方案

git checkout -- readme.txt

针对上述场景二的解决方案

#这一行命令是把暂存区的文件修改回之前的版本(工作区的版本还没动)
git reset HEAD readme.txt
#这一行命令是把工作区的文件修改回之前的版本
git checkout -- readme.txt

3.6 删除文件

https://www.liaoxuefeng.com/wiki/896043488029600/900002180232448

#在工作区移除一个文件
git rm test.txt
#提交至版本库
git commit -m "remove test.txt"

如果仅完成了第一步,就发现自己误删了,那正好利用git checkout -- test.txt,因为可以把版本库里的文件调出来,这样就能防止误删。不过,这样做的缺点是:可能会损失最后一次提交之后修改的内容。

4 远程仓库

https://www.liaoxuefeng.com/wiki/896043488029600/896954117292416

这部分主要教我们如何创建github账户,然后把本地账户与github关联起来。我们有必要理清工作区、暂存区、本地仓库、远程仓库之间的关系以及它们之间互相转换的命令。

4.1 添加远程库

https://www.liaoxuefeng.com/wiki/896043488029600/898732864121440

第一步:在github上创建一个仓库(见上述链接)

第二步:将本地仓库与远程仓库进行关联(当然前提是你本地得先建好一个仓库才行,参见第2部分)

命令:

#注意,此处应当更换为自己项目仓库的地址
git remote add origin https://github.com/LZX-ZNRA/learngit.git

第三步
将某个分支(例如:master)推送到远程版本库(例如:origin)

#origin和master都是可以更改的参数
git push -u origin master

**-u参数的作用:**由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

#简化后的代码
git push origin master

值得一提的是,这一步可能最初会遇到一些问题,那就是报错(超时),此时需要VSCode和github进行一个授权,授权结束后自然就可以联网。授权成功的画面在这里:

如果要删除远程库,那么首先应查看远程库的情况:

git remote -v

而清除远程库的动作是这样的:

git remote rm origin

4.2 从远程库克隆

#从远程仓库往下克隆东西(后面换成自己要克隆的ssh协议地址)
git clone git@github.com:junyanz/pytorch-CycleGAN-and-pix2pix.git


鲤鱼王小蓝说:

好了,今天就写到这里了,明天我们继续学习git的分支结构。书签在这:

https://www.liaoxuefeng.com/wiki/896043488029600/896954848507552

另外推荐一个不错的git教程。

https://www.cnblogs.com/xulinjun/p/12434778.html

【教程搬运】廖雪峰Git的使用教程(一)相关推荐

  1. 廖雪峰 php教程,获取廖雪峰老师的Python3教程的php脚本

    P.S. 2019年11月15日更新. 昨天一个朋友问我能否帮忙下载廖雪峰老师的python3教程,于是便写了这个php脚本. 在这里非常感谢廖雪峰老师的辛苦努力.<?php /** * 获取P ...

  2. 廖的python教程_廖雪峰的Python3.x教程.pdf

    目录 Python教程 Python简介 安装Python Python解释器 第一个Python程序 使用文本编辑器 Python代码运行助手 输入和输出 源码 learning.py Python ...

  3. 廖雪峰Git简明教程整理

    廖雪峰Git简明教程 声明:本教程完全搬运自廖雪峰老师的个人网站,仅限于学习使用.所有版权归廖雪峰老师所有.整理人为Megatron,如果侵权请联系本人zhangwz93@foxmail.com删除. ...

  4. Git简明入土教程2.4万字-转自廖雪峰Git

    文章目录 0 前言 1 简介 2 切换仓库版本 2.1 版本回退 2.2 工作区与暂存区 2.3 管理修改 2.4 撤销修改 2.5 删除文件 3 远程仓库 3.1 添加远程库 3.2 从远程库克隆 ...

  5. 学习廖雪峰Git入门教程--总结

    廖雪峰的教程作为入门级别的个人感觉还是很实用的,大家可以去参考学习:廖雪峰Git教程 2018年8月23日14:52:25 [安装git] 先安装Git 安装好之后打开git.bash,之后输入下面的 ...

  6. 廖雪峰Git教程学习笔记

    廖雪峰git简单教程学习笔记 教程地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b ...

  7. 《廖雪峰Git教程》学习记录

    <廖雪峰Git教程>学习记录 作者:婷婷 摘要:这段时间学习了廖雪峰老师的Git教程,廖老师已经写得非常易懂了,本人在此处记录了学习到的在windows环境下Git的基本用法,写此博客,便 ...

  8. [廖雪峰Git教程]知识点整理

    Git 删除本地分支和远程分支 git branch -d test-2020 #删除本地分支 git push origin --delete test-2020 #删除远程分支git branch ...

  9. python爬虫教程-Python教父|廖雪峰老师官方爬虫教程,13个案例带你全面入门!

    原标题:Python教父|廖雪峰老师官方爬虫教程,13个案例带你全面入门! Python简直就是万能的,你用Python都做过哪些事? 用网页看各大网站的VIP视频,用python下载? 用Pytho ...

  10. 廖雪峰python教程-福利 | 廖雪峰官方Python教程,拿走不谢!

    原标题:福利 | 廖雪峰官方Python教程,拿走不谢! Python简直就是万能的,你用Python都做过哪些事? 用网页看各大网站的VIP视频,用python下载? 用Python玩跳一跳,跳到5 ...

最新文章

  1. IDEA实际开发中的常用优化设置
  2. 准备搭建经营分析前端试验型平台
  3. dataTable() 与 DataTable() 的差别与处理方式
  4. python递归求5!_用Python解数独[6]:递归获得最终答案
  5. 如何机智的弄坏一台电脑?
  6. 【问答集锦】联邦学习让隐私保护和海量数据学习兼得!
  7. 【转】一致性hash算法与server列表维护
  8. 1. Browser 对象 - Window 对象
  9. Linux 下DNS服务配置
  10. 《数字图像处理》--冈萨雷斯(第十章)
  11. NI6509输出遇到的问题
  12. html5 廖雪峰,廖雪峰 JavaScript Python Git 教程.pdf-原创力文档
  13. R语言中的K折交叉验证
  14. 推荐系统笔记(八):推荐系统中的长尾效应
  15. 浅谈如何在优麒麟22.04中使用Eigenstrat和Plink工具生成类23andMe格式原始数据
  16. 互联网时代/数据分析时代,一张思维导图带你学习数据分析的思路
  17. PostgreSQL 获取所有库名、表名、字段名
  18. windows onlyoffice教程
  19. python中的与或非 | ^
  20. Charles 使用总结

热门文章

  1. PMP_第4章章节试题
  2. PDF怎么转换成Word文字
  3. python常用库大全文库_Python库参考手册
  4. QT C++ 百度智能云 人脸图像识别应用实例
  5. oracle报表工具查询数据太慢优化方案,页面优化和sql优化
  6. 亿乐社区一比一高仿源码全开源
  7. k2路由器刷华硕固件
  8. ACR122密钥X字典
  9. 获取APP包名和activity的几种方法
  10. ECSHOP源码分析