0


git(二)——忽略文件版本追踪+分支管理常用命令

.gitgnore 忽略文件的版本追踪

1.什么是.gitgnore?


.gitignore

文件是一个由 Git 版本控制系统使用的配置文件,它告诉 Git 哪些文件和目录应该被忽略,即不应该被加入到版本控制中。通常用于排除一些不必要的文件,比如编译生成的文件、日志文件、个人配置文件等,这些文件在团队成员之间共享是没有必要的,甚至可能会引起冲突。 所以要排除不需要版本控制的文件

2.如何使用?

** 1. 脚手架 .gitignore :**配置git忽略的文件,有些项目会自动生成此文件,如果没有可以手动创建

** 2. 用文本编辑器打开设置,进行配置:**

*** **每个配置独占一行

** * **每行的内容可以是文件、目录的名称,路径或他们的模式匹配

                                例如:node_moudels 

                                          xxx.json 

                                          xxxx.json 

                                          xxxxx.json 

** 3. 模式匹配**

规则:

                                  1. 空行不匹配任何内容,它仅仅是用作分隔符来方便我们阅读 

                                  2. #用于注释,\表示转义 

                                  3. * 可以匹配任何字符(0次或多次), ? 可以匹配任何字符(1次) 

                                  4. / 用于分割目录 

                                              (1) 当/在开头时,表示从.gitignore文件开始匹配,否则,他的下都将开始匹配 

                                              (2)当/在末尾时,只匹配目录,否则,则同名的目录和文件都将匹配 

                                  5.原先被排除的文件,使用!模式后该文件将会被重新包含,如果该文件的父级被排除了,那么失效 

** 4.**[]通常用于匹配一个字符列表,如:a[mn]z 可匹配 amz 和 anz


** 5.** 用于匹配多级目录,如 a//b 可匹配 "a/b",“a/x/b","a/x/y/b" 等

示例:

                           1. 忽略所有内容 —— * 

                           2. 忽略所有目录 —— */ 

                           3. 忽略public目录下的所有文件,除了favicon.ico文件 —— 

                                      public/* 换行  ! public/favicon.ico 

                           4. 只保留 public目录下的 a{一个字符}z.{后缀名}的所有文件 —— 

                                      /* 换行 !/public/   /public/* /public/a?z.* 

                   

** 如何知道某个文件是否被忽略了?**

** ** git check-ignore 文件名

** 查看具体信息**

                  git check-ignore -v 文件名 

               

** 注意:**

** .gitignore 只能忽略那些没有被追踪的文件,所以先纳入版本管理后写入.gitignore是无效的**

** **解决办法

** **先清除本地缓存之后再加入

                          git rm -r --cached 

                          git add . 

                          git status 

** 同样的,已被.gitignore忽略的文件也是无法加人版本库的。**

              **解决办法**     

** **把gitignore里定义的规则移除

git 分支管理

1.什么是git分支

    Git 分支管理是指使用 Git 版本控制系统来创建、切换、合并和删除分支的一系列操作。分支是 Git 中一个非常重要的概念,它允许你在不干扰主开发线(通常称为主分支或 
master

分支,但在 Git 2.28 版本后,默认分支名被更改为

main

)的情况下,进行新的功能开发、错误修复或实验性更改。

2.使用后有哪些好处?

  1. 并行开发:不同的开发者可以在不同的分支上并行工作,互不影响。
  2. 功能隔离:每个新功能或修复都可以在自己的分支上开发,直到完成并测试通过后再合并到主分支。
  3. 安全测试:可以在分支上测试新功能或修复,而不会影响到主分支的稳定性。
  4. 版本控制:分支提供了一种自然的方式来管理项目的不同版本或阶段。
  5. 保持主分支干净:主分支应该只包含稳定且经过测试的代码。
  6. 使用特性分支:为每个新功能或修复创建一个单独的分支。
  7. 定期合并:定期将主分支的更改合并到你的特性分支中,以确保你的工作基于最新的代码。
  8. 解决冲突:在合并分支时,如果遇到冲突,及时解决它们,以确保合并的顺利进行。
  9. 删除不再需要的分支:一旦分支上的工作被合并到主分支中,并且你确信不再需要该分支,就应该删除它以保持仓库的整洁。

3.基本操作

1.创建分支

创建成功后仍然处于原来的分支上

git branch 分支名

2.切换分支

# Git 2.23 版本之前
git checkout 分支名

# Git 2.23 版本之后
git switch 分支名

# Git 2.23 版本之后,可以使用
 git checkout -b <branch-name> 

或

 git switch -c <branch-name>
 
来同时创建并切换到新分支。

3.删除分支

git branch -d 可以删除一个已经合并到主分支的分支。如果分支尚未合并,Git 会阻止你删除它,除非你使用 -D 选项强制删除。

# 合并过的分支
git branch -d 分支名

# 未合并的分支
git branch -D 分支名

4.查看分支

git branch

命令可以查看当前仓库中的所有分支,当前分支会显示为绿色,并且前面会有一个星号(*)标记。

git branch 

5.合并分支

git merge 分支名

在项目中,一般有一个开发分支,一 个主线分支** **

例如: 在本地,修改文件,dev分支提交本地一次——(git commit -m '第一次提交')

git commit -m '第一次提交'
            创建xxx分支,然后再修改文件,进行提交——(git branch xxx)
git branch xxx
            切换到 xxx分支——(git  checkout xxx)
git checkout xxx
             查看日志 ——(git log)
git log
             这个时候xxx分支会显示有一次提交的,在dev分支第一次提交时,但它也只有第一次提交的内容——(cat 文件名)
# 通过cat 文件名 查看文件信息
cat 文件名
            这个时候可以把dev分支合并到xxx分支上面——(git merge dev)
git merge dev
            合并成功后,可以把xxx当成主线分支,修改名字——git branch -m xxx main)
git branch -m xxx main
            ***主线分支一般不要动,合并完后最好直接切换回开发分支**

6.恢复工作区文件

以下情况都是在提交过远程仓库后**

** ** 1. 不小心删了,直接git checkout 文件名 就能恢复

          2. 修改为文件并且添加到暂存区(git add .) 后想返回之前的  

                          首先 git log 获取提交信息  

                          找到提交id, 然后  git checkout id 文件名 

          3. add.后并且提交到本地了(git commit -m ''),想返回之前的 ,步骤和第二部一样,另外可以通过id来选择回退到哪个版本. 

本期内容就到这里,如果您觉得有用可以收藏+关注,另外欢迎各位大佬留言评论,下期再见!!

标签: git gitee

本文转载自: https://blog.csdn.net/2401_84498467/article/details/142313590
版权归原作者 开胃棒棒糖 所有, 如有侵权,请联系我们删除。

“git(二)——忽略文件版本追踪+分支管理常用命令”的评论:

还没有评论