首页 > 其他分享 >git(二)——忽略文件版本追踪+分支管理常用命令

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

时间:2024-09-17 14:52:09浏览次数:3  
标签:文件 git xxx Git branch 常用命令 分支 追踪

.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,xxx,Git,branch,常用命令,分支,追踪
From: https://blog.csdn.net/2401_84498467/article/details/142313590

相关文章

  • linux常用命令大全-2
    linux常用命令大全-3-CSDN博客linux常用命令大全-1-CSDN博客linux常用命令大全-5-CSDN博客linux常用大全-4-CSDN博客ls名称:ls语法:ls[-options][filelist]说明:ls(列出子目录内容清单)命令会是你最经常使用的程序命令之一。使用它最简单的格式,ls命令......
  • linux常用命令大全-5
    linux常用命令大全-3-CSDN博客linux常用命令大全-2-CSDN博客linux常用命令大全-1-CSDN博客linux常用大全-4-CSDN博客文件的链接文件的链接²在UNIX系统中,多个文件名可以指向存储介质中的同一个数据区,类似于Windows中的快捷方式。这种方式称为文件的链接。²文......
  • GitHub 2023排名前十的最佳开源项目
    开源软件(OSS)彻底改变了当今软件开发的方式。在数百万个开源GitHub项目中,要找到最适合需求的开源项目可能会让人不知所措。今天给大家列出2023年增长最快的前10个开源GitHub仓库。通过这些增长最快的开源项目,也可以从整体上了解一下目前技术的整体动向。1、PyGWalker:JupyterNoteboo......
  • Windows Media Player 中的 DRM(数字版权管理DRM 的英文全称是 Digital Rights Managem
    WindowsMediaPlayer中的DRM(数字版权管理DRM的英文全称是DigitalRightsManagement)功能起源于微软对保护数字内容的需求。其起源可以追溯到:版权保护需求:随着数字音乐和视频的普及,内容创作者和版权所有者希望防止未经授权的复制和分发。WindowsMediaRightsManager......
  • Git补充/Git
    这是基于上篇Git项目常用命令的一些额外补充,如有错误,请大家指针一、前备知识1.1分布式vs集中式1.1.1集中式版本控制系统(CVCS)核心代码存放:所有代码和历史记录都存储在一个中央服务器上,开发者在本地只保存当前所需的部分代码副本。优点:权限控制:集中式系统可以更好地......
  • gitlab安装好后无法登录,如何修改密码
    部署一切正常的话,就可以访问gitlab的管理界面了。端口可以在vim/etc/gitlab/gitlab.rb文件中修改。修改后记得使用命令:gitlab-ctlreconfigure刷新配置,然后重启gitlab,命令是gitlab-ctlrestart。既然是linux,管理员的账号一般都是root。开始整:进入路径:cd/opt/gitlab/bingi......
  • ROS的通讯机制(一):常用命令
        一、rosnode:操作节点        rosnode是用于获取节点信息的命令。相关命令:rosnodeping测试到节点的连接状态rosnodelist列出活动节点rosnodeinfo打印节点信息rosnodemachine列出指定设备上节点rosnodekill......
  • 上海登陆最强台风 & 台风路径追踪 All In One
    上海登陆最强台风&台风路径追踪AllInOne上海最强台风路径追踪中央气象台、市气象服务中心介绍,今年第13号台风“贝碧嘉”(强台风级)的中心已于今天(2024年09月16日)7点30分前后在上海浦东临港新城登陆,登陆时中心附近最大风力14级(42米/秒),中心最低气压为955百帕。“贝碧嘉”也超......
  • 一文让你的计算机图形学从入门到入坟,从画线算法=>光线追踪=>GPU的并行加速与手搓仿真平
    文章目录前言一.计算机图形学是什么?有什么?为什么学?当前发展?二.基础概念2.120道基础知识Q&A2.2计算机图形学设备及组成2.2.1设备分类2.2.2输入设备2.2.3输出设备2.3帧缓存原理详细解释2.3.1帧缓存的基本概念2.3.2帧缓存的结构2.3.3总结2.3OpenGL的基础知识......
  • Git提交有乱码
    服务器提交记录如图可知application.properties中文注释拉黄线,提示Unsupportedcharactersforthecharset'ISO-8859-1'   打开settings- Editor-FileEncodings 因为我们项目的其他文件都是UTF-8,所以,我们将默认值都改成UTF-8然后‘重新输入文字’再提交查......