Git学习笔记(复习专用,B站狂神说)
Git学习笔记
- 1、Git和Linux的历史
- 2、常用的Linux命令
- 3、Git基本理论(核心)
- 工作流程:
- 4、Git项目搭建
- 本地仓库搭建
- 5、Git文件操作
- 忽略文件
- 6、GitHub的使用
- 1、设置本机绑定ssh公钥,实现免密码登录
- 2、使用GitHub新建一个仓库
1、Git和Linux的历史
这个大佬就是Linux和Git之父,Linus Benedict Torvalds(林纳斯·本纳第克特·托瓦兹)。
Linux内核开源项目有很广泛的参与者。绝大多数的Linux内核维护工作都花在了提交补丁和保存文档的繁琐事务上(1991 - 2002年)。到了2002年,整个项目组开始启用一个专有的分布式版本控制系统Bitkeeper来管理和维护代码。
由于Linux社区中有很多大佬!那些大佬尝试破解研究Bitkeeper,在2005年,开发Bitkeeper的商业公司同Linux内核开源社区的合作关系结束,他们收回了Linux内核社区免费使用的权利。
不给用就不给用呗,我Linux系统都做出来了,再做一个管理维护代码的系统有何难,然后Linus花了两周时间开发出了Git,什么是大神啊,这就是大神,大学期间开发了Linux系统,只用两周开发出至今我们都在使用的Git,简直成神了。
Git是世界上最先进的分布式版本控制系统
2、常用的Linux命令
1、cd:改变目录
2、cd…退回到上一个目录,直接cd进入目录
3、pwd:显示当前所在的目录路径
4、ls:列出当前目录中的所有文件
5、touch:新建一个文件夹,如touch index.js 就会在当前目录下新建一个
index.js文件
6、rm:删除一个文件,rm index.js 就会把index.js文件删除
7、mkdir:新建一个目录,就是新建一个文件夹
8、rm -r:删除一个文件夹,rm -r src删除src目录
rm -rf / :切勿轻易尝试,递归删除操作,能删除电脑中所有文件
9、reset:重新初始化终端/清屏
10、clear:清屏
11、history:查看命令历史
12、help:帮助
13、exit:退出
14、#表示注释
3、Git基本理论(核心)
Git本地有三个工作区域:工作目录(working directory)、暂存(stage/index)、资源库(repository或Git directory)。如果加上远程的Git仓库(remote directory)就可以分为四个工作区域。
workspace:工作区,平时存放项目代码的地方
index/stage:暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
repository:仓库区(本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
remote:远程仓库,托管代码的服务器,可以简单的认为是你项目中的一台电脑用于远程数据交换。
注意这是个隐藏文件夹,需要手动设置才能看到
工作流程:
1、在工作目录中添加,修改文件;
2、将需要进行版本管理的文件放入暂存区域;git add .
3、将暂存区的文件提交到git仓库;git commit
4、Git项目搭建
工作目录(WorkSpace)一般是你希望Git帮助你管理的文件,可以是你项目的目录,也可以是一个空目录,建议不要有中文。
这六个命令建议记住。
本地仓库搭建
1、在当前目录新建一个Git代码库
$ git init
2、克隆远程目录,将远程服务器上的仓库完全镜像一份到本地
$ git clone [url]
5、Git文件操作
版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,不然可能会提交现在还不想提交的文件,或者要提交的文件没提交上。
Untracked:未跟踪,此文件在文件夹中,但并没有加入到git库,不参与版本控制,通过git add 状态变为 staged。
Unmodify:文件已入库,未修改,即版本库中的文件快照内容与文件夹中完全一致,这种类型的文件有两种去处,如果它被修改,就变为Modified,如果使用 git rm 移出版本库,则成为 Untracked 文件
Modified:文件已修改,仅仅是修改,并没有进行其他操作,这个文件也有两种去处,通过 git add 可进入暂存 staged 状态,使用 git checkout 则丢弃修改过,返回到Modified状态,说白了就是从库中取出文件,覆盖当前修改。
Stage:暂存状态,执行git commit 则将修改同步到库中,这时库中的文件和本地文件又变为一致,文件为Unmodify状态。执行 git reset HEAD filename取消暂存,文件状态为 Modified。
上图文件没有被跟踪,下图文件被跟踪了,变成待提交状态。
git commit -m 提交暂存区中的内容到本地仓库
一般我们会把代码全部放在工作目录下。
忽略文件
有时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等
在主目录下建立".gitignore"文件,此文件有以下规则,以例子说明:
#为注释 | 解释 |
---|---|
*.txt(其他文件也是一样) | #忽略所有 .txt文件 |
!lib.txt | # lib.txt除外 |
/temp | #仅忽略项目根目录下的TODO文件,不包含其他目录temp |
build/ | #忽略build/目录下所有文件 |
doc/*.txt | # 忽略doc/notes.txt但不包括doc/server/arch.txt |
6、GitHub的使用
国内有个gitee,用法和GitHub是一样的,由于GitHub是国外网站,访问速度会比较慢,有时候甚至进不去,所以也可去使用gitee。
1、设置本机绑定ssh公钥,实现免密码登录
GitHub是远程仓库,我们平时工作的是本地仓库。
用户目录下新建.ssh文件,使用ssh-keygen -t rsa生成公钥,一直回车直到公钥生成完毕。
打开.pub的那个文件,把里面的内容复制到ssh,设置标题,就OK了
.
2、使用GitHub新建一个仓库
然后
Git学习笔记(复习专用,B站狂神说)相关推荐
- Git学习笔记:远程仓库
前言 在补习python的时候主要参考的是廖雪峰的教程Python教程,在学习完后准备完成期末作业时,遇到了一个技术难题,需要初步掌握git,因此开始了git的学习. 本教程参考廖雪峰的Git教程 G ...
- Git 学习笔记:6 GitHub
Git 学习笔记:6 GitHub 账户的 创建和配置 SSH访问 头像 邮件地址 两步验证 对项目做贡献 派生(fork)项目 GitHub 流程 创建合并请求 利用合并请求 合并请求的进阶用法 将 ...
- Git学习笔记与IntelliJ IDEA整合
2019独角兽企业重金招聘Python工程师标准>>> Git学习笔记与IntelliJ IDEA整合 一.Git学习笔记(基于Github) 1.安装和配置Git 下载地址:htt ...
- Git 学习笔记:自定义Git(完)
前言 在补习python的时候主要参考的是廖雪峰的教程Python教程,在学习完后准备完成期末作业时,遇到了一个技术难题,需要初步掌握git,因此开始了git的学习. 本教程参考廖雪峰的Git教程 G ...
- Git学习笔记:标签管理以及GItHub
前言 在补习python的时候主要参考的是廖雪峰的教程Python教程,在学习完后准备完成期末作业时,遇到了一个技术难题,需要初步掌握git,因此开始了git的学习. 本教程参考廖雪峰的Git教程 G ...
- Git学习笔记:分支管理3
前言 在补习python的时候主要参考的是廖雪峰的教程Python教程,在学习完后准备完成期末作业时,遇到了一个技术难题,需要初步掌握git,因此开始了git的学习. 本教程参考廖雪峰的Git教程 G ...
- Git学习笔记:分支管理(2)
前言 在补习python的时候主要参考的是廖雪峰的教程Python教程,在学习完后准备完成期末作业时,遇到了一个技术难题,需要初步掌握git,因此开始了git的学习. 本教程参考廖雪峰的Git教程 G ...
- Git学习笔记:分支管理(1)
前言 在补习python的时候主要参考的是廖雪峰的教程Python教程,在学习完后准备完成期末作业时,遇到了一个技术难题,需要初步掌握git,因此开始了git的学习. 本教程参考廖雪峰的Git教程 G ...
- Git学习笔记:修改
前言 在补习python的时候主要参考的是廖雪峰的教程Python教程,在学习完后准备完成期末作业时,遇到了一个技术难题,需要初步掌握git,因此开始了git的学习. 本教程参考廖雪峰的Git教程 G ...
最新文章
- ASP.NET MVC – 模型简介
- NLTK命名实体识别NER
- Strings in the Pocket
- VTK:图表之TreeToMutableDirectedGraph
- python教程下载百度云盘到手机_Python教程百度云盘哪里找
- 东华大学java期末_东华大学数据结构期末复习题!.doc
- 使用 WordPress 自定义字段功能为文章添加下载按钮
- apache commons Java包简介
- Ubuntu下安装osu
- 他教全世界程序员怎么写好代码,而且将所有答案写在这本书里
- php网页抓取浏览者手机号码_提供一个网页抓取hao123手机号码归属地的例子
- 如何禁用计算机休眠,电脑如何关闭休眠功能,教你电脑如何关闭休眠功能
- 19964 [HAOI2006]聪明的猴子
- NUC980 PWM
- 微信公众号数据分析报告
- 电脑 蓝屏报错:SYSTMEM SCAN AT RAISED IRQL CAUGHT IMPROPER DRIVER UNLOAD
- cannot find -lGL(CentOS8 QT5.12.12)
- greenplum麒麟安装笔记
- java 获取本年第一天_java获取年份的第一天和最后一天
- 2022全网最全的持续集成基础【你知道的和不知道都在这里】
热门文章
- 怎样重启Gunicorn
- 【题目】四平方和定理,又称为拉格朗日定理: 每个正整数都可以表示为至多4个正整数的平方和。 如果把0包括进去,就正好可以表示为4个数的平方和。(输出最后一个序列)
- JAVA AIO编程
- MyBatis映射文件如何给数据库的int类型字段“插入”string类型记录
- 图像质量评价的方法和意义
- Python 语法错误 except Exception, e: ^ SyntaxError: invalid syntax
- datalist图片九宫显示
- java 检测u盘_java实现监听u盘示例分享
- 解决Ubuntu 20.04 播放视频,因缺少编解码器无法处理音频/视频流,以及解决‘因没有公钥,无法验证下列签名’问题
- 完美免费在线去背景图片,便捷变速。在5秒内消除或者替换图像背景,智能调整颜色,所有操作都在浏览器完成,无需上传图像 - BgSub