Linux下Git操作

一、基本命令

1、创建 git 目录(工作区)

mkdir gitcode

2、创建本地仓库,生成 .git 隐藏目录

git init

3、设置配置项

git config user.name "xxx"

git config user.email "....."

4、查看配置项

git config -l

5、删除配置项

git config --unset user.name

git config --unset user.email

6、配置项生效于所有仓库

git config --global user.name "xxx"

git config --global user.email "....."

删除也要带上 --global

二、添加要管理文件

1、理论

.git 是版本库,要把文件交给它管理,但是不允许我们手手动添加,所以一开始文件只能在工作区 gitcode目录下。

添加管理文件流程:

objects:修改的工作区文件内容全部会写入到 objects 对象库的一个新 git 对象里面,暂存区只是把索引指向了 objects 里面的一个个对象,master 也是。

add:把工作区中的修改内容加入到暂存区。

commit:将暂存区内容加入 master 分区。

所以拿到 HEAD 指针就拿到了 master 分区,就找到了一个个文件修改的对象。

2、命令

(1)添加到暂存区

git add filename...

(2)添加到 master 分区

git commit -m "这次提交的日志"

(3)查看从近到远的提交记录

git log

显示的一长串字符是哈希算法生成的 commit_id,代表一个个修改对象。

所以 HEAD 索引就是指向最近一次修改产生对象的 commid_id

(4)查看 .git 目录下文件

git cat-file -p commit_id

相关推荐
我是koten5 小时前
【运维杂谈】K8s遇到Terminating的名称空间删除不了怎么办?(解决方案亲测有效)
linux·运维·服务器·云原生·kubernetes·k8s·名称空间
2601_9679873713 小时前
安装 Redis 或 Redis Stack
linux·windows·redis·macos·安装
feng_you_ying_li13 小时前
linux之数据链路层
linux·网络·智能路由器
修己xj13 小时前
服务器无法解析域名?一次 DNS 配置缺失的排查与修复
运维
2301_7671139814 小时前
点过“不再询问”就要检查:Claude Code权限文件也可能存着密钥
git·信息安全·claude code
GeW14 小时前
高端化走到深处,是数据库和Linux的事
linux
程序员初一15 小时前
Linux 远程桌面有四种做法
linux·ssh
程序开发阿元16 小时前
1C1G 能跑什么:把留常驻服务和不留摆进一张内存表
linux·ssh
xbzb18 小时前
自定义 yum 软件源:Linux 上 createrepo,Windows 上纯 Python 也能造
linux·运维·windows·python·yum·createrepo
Android系统攻城狮18 小时前
Linux FFmpeg深度解析之avio_open调用流程与实战(三十八)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频