git学习 1

打开自己想要存放git仓库的文件夹,右键打开git bush,用git init命令建立仓库

用 ls -a(表示全都要看,包括隐藏的)可以看到git仓库

也可以用 git clone 接github链接(点code选项里面会给链接,结尾是git的那个)

git可以分成三个区域,分别是.git所在目录(工作区,我们建立的文件夹)暂存区(.git/index记录即将提交的修改)本地仓库(.git/objects,记录各个版本数据)

git add就是把代码放到暂存区,git commit就是放到本地仓库

git文件的所有状态:

git add .可以add整个目录

git commit会进入vim,按i会进入修改模式,按esc会退出进入命令模式,输入 :wq保存并退出

也可以直接在终端里用vi file1.txt命令修改文件,可以:help查看帮助

git commit -m "水水水水水水"是常用的commit方式

git reset 回退版本,分为soft,hard和mixed

勾代表保留,×代表清空

误操作了怎么办?用git reflog查看每次操作的编号,找到误操作之前的版本号,用git reset 编号就可以回到这个版本了

git diff查看差异,啥都不加默认比较工作区与暂存区

git diff HEAD比较工作区和库

git diff --cached比较暂存区和库

git diff id1 id2比较两个版本的差异

git diff head~ head比较上一个版本与这个版本的区别

用~2就是上上个版本

rm删除工作区文件的时候记得git add一下把暂存区的也更新掉,这样比较麻烦

直接用git rm更好,只需要最后commit一下就好

.gitignore是忽略文件,通过修改其内容(如echo xxx.log > .gitignore)可以记录那些文件是要被忽略的,不用放入暂存区,仓库。如自动生成的log,中间文件和带有个人信息的文件都要放进去

echo ssss >> file1.txt和linux一样,两个箭头代表加到已有的后面

假如在把文件放入ignore之前文件已经入库了怎么办?用git rm -cached xxx.log,这样可以只删除暂存区中文件,不会动工作区。下次commit库里就没有xxx.log了

也可以忽略文件夹,最后面要加/

具体书写规则如下:

与github交互:

在本地的.ssh文件夹下生成一个密钥(存在一个自己取好名字了的文件里),再把这个密钥输入到github自己的setting那边去,这样对面的仓库就知道这是你了。注意要在自己的ssh文件夹下生成一个config文件,讲一下自己在登陆github的时候使用的是那个文件里的密钥。这样就大功告成了,可以clone自己在github上面的仓库了。

交互就用push,pull

相关推荐
red_redemption20 分钟前
自由学习记录(161)
学习
南境十里·墨染春水24 分钟前
linux学习进展 主函数的参数
linux·运维·学习
淮北49425 分钟前
obsidian管理自己的计划
linux·学习·kanban·obsidian
南無忘码至尊28 分钟前
Unity学习90天-第1天-认识Transform + 坐标系
学习·unity·游戏引擎
my_daling33 分钟前
DSMC通信协议理解,以及如何在FPGA上实现DSMC从设备(1)
学习·fpga开发
嵌入式×边缘AI:打怪升级日志1 小时前
Makefile 完全学习笔记:从入门到通用模板解析
笔记·学习
ACGkaka_1 小时前
ES 学习(九)从文本到词元:分词器如何“拆解“你的数据
大数据·学习·elasticsearch
马优晨1 小时前
git restore --source 提交id 和 git reset --hard 提交id 有什么区别
git·git reset·git restore·git回退的区别·git回退代码
南無忘码至尊1 小时前
Unity学习90天-第1天-认识Unity并书写我们的第一个脚本
学习·unity·游戏引擎
小臭希1 小时前
Git(代码版本控制系统)
java·git·github