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

相关推荐
cdut_suye9 分钟前
【Linux系统】从 C 语言文件操作到系统调用的核心原理
java·linux·数据结构·c++·人工智能·机器学习·云计算
sz66cm1 小时前
Linux基础 -- 在内存中使用chroot修复eMMC
linux·服务器
小刘不想改BUG1 小时前
LeetCode LCR 015. 找到字符串中所有字母异位词 (Java)
linux·算法·leetcode
Hi202402171 小时前
如何通过partclone克隆Ubuntu 22系统
运维·服务器·ubuntu
Li_yizYa2 小时前
网络原理 | 网络基础概念复习
运维·服务器·网络·计算机网络
s_little_monster2 小时前
【Linux】socket网络编程基础
linux·运维·网络·笔记·学习·php·学习方法
猴子请来的逗比4892 小时前
nginx负载均衡及keepalive高可用
运维·学习·nginx·负载均衡
FL171713143 小时前
UR5e机器人Matlab仿真
linux·matlab·机器人
不知几秋7 小时前
数字取证-内存取证(volatility)
java·linux·前端
欧先生^_^10 小时前
Linux内核可配置的参数
linux·服务器·数据库