【教程搬运】廖雪峰Git的使用教程(一)
廖雪峰的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的使用教程(一)相关推荐
- 廖雪峰 php教程,获取廖雪峰老师的Python3教程的php脚本
P.S. 2019年11月15日更新. 昨天一个朋友问我能否帮忙下载廖雪峰老师的python3教程,于是便写了这个php脚本. 在这里非常感谢廖雪峰老师的辛苦努力.<?php /** * 获取P ...
- 廖的python教程_廖雪峰的Python3.x教程.pdf
目录 Python教程 Python简介 安装Python Python解释器 第一个Python程序 使用文本编辑器 Python代码运行助手 输入和输出 源码 learning.py Python ...
- 廖雪峰Git简明教程整理
廖雪峰Git简明教程 声明:本教程完全搬运自廖雪峰老师的个人网站,仅限于学习使用.所有版权归廖雪峰老师所有.整理人为Megatron,如果侵权请联系本人zhangwz93@foxmail.com删除. ...
- Git简明入土教程2.4万字-转自廖雪峰Git
文章目录 0 前言 1 简介 2 切换仓库版本 2.1 版本回退 2.2 工作区与暂存区 2.3 管理修改 2.4 撤销修改 2.5 删除文件 3 远程仓库 3.1 添加远程库 3.2 从远程库克隆 ...
- 学习廖雪峰Git入门教程--总结
廖雪峰的教程作为入门级别的个人感觉还是很实用的,大家可以去参考学习:廖雪峰Git教程 2018年8月23日14:52:25 [安装git] 先安装Git 安装好之后打开git.bash,之后输入下面的 ...
- 廖雪峰Git教程学习笔记
廖雪峰git简单教程学习笔记 教程地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b ...
- 《廖雪峰Git教程》学习记录
<廖雪峰Git教程>学习记录 作者:婷婷 摘要:这段时间学习了廖雪峰老师的Git教程,廖老师已经写得非常易懂了,本人在此处记录了学习到的在windows环境下Git的基本用法,写此博客,便 ...
- [廖雪峰Git教程]知识点整理
Git 删除本地分支和远程分支 git branch -d test-2020 #删除本地分支 git push origin --delete test-2020 #删除远程分支git branch ...
- python爬虫教程-Python教父|廖雪峰老师官方爬虫教程,13个案例带你全面入门!
原标题:Python教父|廖雪峰老师官方爬虫教程,13个案例带你全面入门! Python简直就是万能的,你用Python都做过哪些事? 用网页看各大网站的VIP视频,用python下载? 用Pytho ...
- 廖雪峰python教程-福利 | 廖雪峰官方Python教程,拿走不谢!
原标题:福利 | 廖雪峰官方Python教程,拿走不谢! Python简直就是万能的,你用Python都做过哪些事? 用网页看各大网站的VIP视频,用python下载? 用Python玩跳一跳,跳到5 ...
最新文章
- IDEA实际开发中的常用优化设置
- 准备搭建经营分析前端试验型平台
- dataTable() 与 DataTable() 的差别与处理方式
- python递归求5!_用Python解数独[6]:递归获得最终答案
- 如何机智的弄坏一台电脑?
- 【问答集锦】联邦学习让隐私保护和海量数据学习兼得!
- 【转】一致性hash算法与server列表维护
- 1. Browser 对象 - Window 对象
- Linux 下DNS服务配置
- 《数字图像处理》--冈萨雷斯(第十章)
- NI6509输出遇到的问题
- html5 廖雪峰,廖雪峰 JavaScript Python Git 教程.pdf-原创力文档
- R语言中的K折交叉验证
- 推荐系统笔记(八):推荐系统中的长尾效应
- 浅谈如何在优麒麟22.04中使用Eigenstrat和Plink工具生成类23andMe格式原始数据
- 互联网时代/数据分析时代,一张思维导图带你学习数据分析的思路
- PostgreSQL 获取所有库名、表名、字段名
- windows onlyoffice教程
- python中的与或非 | ^
- Charles 使用总结