git中的语法和术语含义

目录

第一章、git常用术语

1.1)文件状态

①未跟踪(Untracked):文件尚未被Git跟踪,不在版本控制之下。

②已修改(Modified):文件在工作目录中发生了更改,但尚未被暂存。

③未修改(UnModified):文件在工作目录中未发生更改。

④已暂存(Staged):文件的当前版本已经被暂存,准备提交到版本库中。

⑤已提交(Committed):文件的更改已经被永久保存到本地版本库中。

1.2)git常用术语的含义

①工作区:指的是项目目录,其中包含了项目的实际文件。

②暂存区:git add 后文件进入暂存区(Staging Area)

③本地仓库:git commit将暂存区文件同步到本地库

④远程仓库:git push命令将本地分支的更改推送到远程仓库。

java 复制代码
git push 远程仓库名称 本地分支名称

克隆远程仓库到本地时,Git会自动创建名为"origin"的远程仓库默认别名,我们经常写

java 复制代码
git push origin master

第二章、git文件状态解析

2.1)从git init开始:Untracked(未跟踪)

①在项目目录中运行git init命令

Git将创建一个新的.git子目录,用于存储仓库的元数据和对象数据库。

总结:将一个普通的目录转换为一个Git仓库后才能对项目进行版本控制。才能使用其他Git命令来对项目进行跟踪、提交、分支、合并等。
②init后文件状态:Untracked files未被跟踪

git init以后使用命令查看文件状态:

java 复制代码
git status

文件状态为Untracked files,未被跟踪状态。这些文件可能是新创建的文件或者已存在但尚未被添加到Git的版本控制中的文件(就是红色的文件)。这意味着Git不会对其进行版本控制,也不会将其纳入到提交中。这意味着这些文件的更改不会被记录在Git的历史记录中

2.2)git add fileName后:Staged(已暂存)

①使用命令将需要进行版本控制的文件添加到暂存区(Staging Area)

java 复制代码
git add fileName

被git add命令添加的文件会被放入Git的暂存区,文件变成Staged状态,下一次的提交会包含这些文件(文件名称变绿了)。

2.3)其他状态:Unmodify(未修改)modified(已修改)

①git add以后,文件一直没有再修改过,这时候这个文件就是Unmodify(未修改)状态。

②把Unmodify文件使用命令移除版本控制,则成为Untracked文件

移除命令:

java 复制代码
git rm --cached fileName

③git add以后,没有commit,再次修改了文件,这个时候git会将文件状态变更为 modified 已修改状态。注意:如果你确定你这次的更改是必须的,那么你要再次使用 git add 把本次修改提交到暂存区。

2.4)git commit后:Committed(已提交)

git commit将暂存区文件同步到本地库,提交完了以后文件就变成了Committed(已提交)状态。

java 复制代码
git commit -m '提交时的备注'

第三章、.gitignore设置

3.1)设置哪些文件不需要版本控制

①如果没有.gitignore文件使用下面命令创建

java 复制代码
touch .gitignore

②使用命令设置gitignore:

.gitignore可以将文件将不需要提交的与我们代码无关的文件比如:target文件,.settings文件,.project文件.class文件不提交到远程仓库。输入命令Vi .gitignore打开

③点击i键后,开始输入以下不需要提交的文件名称:

java 复制代码
#.settings/.classpath/.project后缀的文件不会被纳入版本控制(不被提交)
.settings
.classpath
.project
#target/文件夹下的所有文件都不会被纳入版本控制(不被提交)
target/

④输入完成后点击esc退出,再输入冒号,才能输入命令wq,回车自动保存后退出。

3.2).gitignore语法介绍

①.gitignore文件中匹配规则:

java 复制代码
#表示注释
*表示匹配任意多个字符
?表示匹配任何一个字符
!表示取反取反
[abc]表示匹配方括号当中的任何一个字符
[0-9]表示匹配0-9当中任意一个数字
两个*号表示任何中间目录,比如src/**/build,可以匹配到src/test/build,也可以匹配到src/current/build。

②取反规则:指定可以不遵守忽略条件的文件名,就算pom.xml文件在被忽略的文件路径下,也不会被忽略。

java 复制代码
!pom.xml

③相对路径写法,过滤掉ssm_web/target/*文件夹下的所有内容:

java 复制代码
ssm_web/target/

④忽略,过滤掉.text类型的文件:

java 复制代码
*.text

⑤忽略掉target路径下的所有java文件:

java 复制代码
target/*.java
相关推荐
透明的玻璃杯2 小时前
git应用
git
炸炸鱼.3 小时前
Git+Jenkins实战(一):从零搭建自动化发布与回滚系统(附完整代码)
git·jenkins
言6666 小时前
要忽略前端依赖包node_modules的文件在目录下 git暂存区消失
git
胡小禾7 小时前
Git Worktree
git
程序员小羊!7 小时前
18 GIt
git
怣疯knight7 小时前
Git 本地分支关联远程分支 常用命令汇总
git
ANNENBERG8 小时前
git分支开发管理
git
坤坤藤椒牛肉面8 小时前
GIT的使用
git
w3296362718 小时前
使用 OpenCode 在 Windows 上加速安装 Playwright 的完整指南
windows·git
我家媳妇儿萌哒哒1 天前
git:无法推送refs到远端。您可以试着运行“拉取”功能,整合您的更改。
git