git 进阶系列教程--add

这篇具有很好参考价值的文章主要介绍了git 进阶系列教程--add。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

git add ---- 将工作区内容放入暂存区

功能介绍

  1. 将工作区(working directory)中的内容放入暂存区(staging area)
  2. 追踪文件(解释:刚被添加到工作区的文件处于未跟踪状态(Untracked files),该命令会将新添加的文件放入暂存区,并且文件将处于已跟踪状态)

命令解析

git add .

添加工作区所有文件进入暂存区
最后的点可以理解为正则里的通配符,git add后面添加的是可以为任意合法的路径。
比如:a.txt、/b.txt、*.txt、a/b.txt…

git add --all

这个命令和git add .命令很像。都是添加工作区所有文件进入暂存区。但是区别还是有的。
区别一:在git的2.0版本之前,git add .只会添加修改的文件、创建的文件。但是,如果你删除了一个文件,这个命令运行后,不会记录你删除了这个文件。以至于,如果你从暂存区恢复所有文件时,删除的文件还会出现在工作区,或者是提交代码后,被删除的文件依旧会在版本库中。所以你需要做其他的操作来办到删除功能,例如:git rm。但是git add --all命令会将所有结果一起放入暂存区(修改、创建、删除)。然后在git的2.0版本后,两者统一了。都是git add --all的效果了。
区别二:git add .命令认为是添加工作区所有文件进入暂存区,是因为我们在运行git命令时,通常是在项目的根目录。git add .的命令其实是提交当前目录的所有文件,而不是项目中的所有文件都提交。git add --all则是真正的将项目中的所有未忽略的文件添加到暂存区。

工作中,上面的这条命令能处理99%需要add命令的情况。下面的知识是为有好奇add命令还能做什么的同学准备的

git add -n .
这条命令多了一个选项:-n,是选项:--dry-run的简写形式
作用是:并不会将匹配到的文件真的添加到暂存区,而是查看一下是否存在文件还没被追踪或者是修改过但是未添加到暂存区。
回车后,会将没有追踪的文件或未添加到暂存区的文件显示出来。
但是通常我们都不会用到该选项,因为查看工作区的状态我们有更好的选择:git status
git add -v .
这条命令的选项:-v,全写是:--verbose
作用:提交的冗余模式
我也不清楚这个冗余模式是什么,官网对它这个命令的解释就一句话:Be verbose.
有清楚的同学踢我一下,评论甩我个链接,不胜感激。
git add -p 文件名.txt

作用是,这样添加一个文件的部分内容进入暂存区。具体做法是,输入命令后会进入交互模式。如果输入Y就全部添加,如果输入e就进入编辑模式,只保留想添加的部分,然后保存退出,最后Y确认。

git add -f .
选项:-f,全写:--force
作用:允许添加已经被忽略的文件
众所周知,在项目的根目录,一版会有.gitignore文件,用于告诉git,哪些文件是不用纳入git管理的。
而-f选项则不惯着这个配置文件。就算被忽略的文件,它也会强行追踪,毕竟force(强制)是程序员的老朋友了。
git add -i .
选项:-i,全写:--interactive
作用:进入提交文件的交互模式。
交互模式...,我想想怎么解释。命令行就是我敲命令,然后收到反馈对吧。交互模式就是你打出命令,会收到几个选项,让你选择。如下。

git 进阶系列教程--add
未完待续。。。文章来源地址https://www.toymoban.com/news/detail-461551.html

git add 说明附录
usage: git add [<options>] [--] <pathspec>

    -n, --dry-run         dry run
    -v, --verbose         be verbose

    -i, --interactive     interactive picking
    -p, --patch           select hunks interactively
    -e, --edit            edit current diff and apply
    -f, --force           allow adding otherwise ignored files
    -u, --update          update tracked files
    --renormalize         renormalize EOL of tracked files (implies -u)
    -N, --intent-to-add   record only the fact that the path will be added later
    -A, --all             add changes from all tracked and untracked files
    --ignore-removal      ignore paths removed in the working tree (same as --no-all)
    --refresh             don't add, only refresh the index
    --ignore-errors       just skip files which cannot be added because of errors
    --ignore-missing      check if - even missing - files are ignored in dry run
    --sparse              allow updating entries outside of the sparse-checkout cone
    --chmod (+|-)x        override the executable bit of the listed files
    --pathspec-from-file <file>
                          read pathspec from file
    --pathspec-file-nul   with --pathspec-from-file, pathspec elements are separated with NUL character

到了这里,关于git 进阶系列教程--add的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • idea将文件移出git的工作区

    之前使用idea在commit项目时候,忘记添加.gitignore文件了,导致提交了很多无关的文件进入远程仓库,网上有教程是使用git - reset head 方法,但是这个方法只是将上一次的commit文件覆盖当前的暂存区文件,而非移除暂存区文件,所以没有用   但是在idea工具好像并没有提供将文件移

    2024年02月13日
    浏览(34)
  • git在工作区和本地库的操作命令

     本文介绍一些开发时,常用的在工作区和本地库之间的操作命令 工作树的修改内容要提交到本地库,首先需要先添加到缓存区stage,在commit到本地库。 你开发了一段时间,可能已经忘记了修改过那几个文件 可以使用 git status 查看 工作区和缓存区的内容 ,即修改过的文件和

    2024年02月15日
    浏览(29)
  • Git分支管理的原理 & 工作区、暂存区的分支共享

    首先,Git是 版本 控制系统,所以Git的存储基本数据单元是不同的 版本对象 ,对应的就是不同的commit。换句话说,我们每commit一次,就是一个版本,也就是一个Git存储单元。 2.1 只有 main 分支时 当只有main分支时,在修改过文件且进行git add 和 git commit 操作后,目前的文件就会

    2024年02月03日
    浏览(32)
  • 【Git】第四篇:基本操作(理解工作区、暂存区、版本库)

    工作区 :就是我们创建的本地仓库所在的目录 暂存区 : stage或index,一般放在.git(可隐藏文件)目录下的index文件(.git/index)中,所以我们把暂存区有时候也叫做索引(index) 版本库 :工作区有一个隐藏目录 .git ,所说的版本库就是隐藏的.git目录。 下面的图详细展示了三者

    2024年02月04日
    浏览(40)
  • Git - 基于IDEA/命令回滚工作区和暂存区的修改

    1. 使用命令行回滚工作区的修改(回滚文件的修改) 可能有一天我正在写代码,写了很久发现写错了,想恢复到一开始的状态,一个笨办法就是把刚刚写的代码一行一行的删除,不过这种方式成本太高,我们可以通过命令来回滚 工作区的代码修改: 测试: ① Test.java文件内

    2023年04月08日
    浏览(41)
  • Git详解(带图) --- 本地电脑的工作区、暂存区、本地仓与远程仓

    在 git 的丰富功能中,工作区 (Work Space)、暂存区 (Index/Staging Area)、本地仓库 (Local Repository) 和远程仓库 (Remote Repository) 被认为是四大核心概念。今天让我们深入了解这些神秘的组成部分,揭开它们的面纱,让你能够更好地利用Git来管理项目。 上图相信大家再熟悉不过,这是我

    2024年01月18日
    浏览(27)
  • 【Linux】:初识git || centos下安装git || 创建本地仓库 || 配置本地仓库 || 认识工作区/暂存区(索引)以及版本库

    Git 原理与使用 课程⽬标 • 技术⽬标:掌握Git企业级应⽤,深刻理解Git操作过程与操作原理,理解⼯作区,暂存区,版本库的含义 • 技术⽬标:掌握Git版本管理,⾃由进⾏版本回退、撤销、修改等Git操作⽅式与背后操作原理 • 技术⽬标:掌握Git分⽀管理,从分⽀创建,切换,

    2024年02月05日
    浏览(44)
  • git 进阶系列教程--add

    功能介绍 将工作区(working directory)中的内容放入暂存区(staging area) 追踪文件(解释:刚被添加到工作区的文件处于未跟踪状态(Untracked files),该命令会将新添加的文件放入暂存区,并且文件将处于已跟踪状态) 命令解析 添加工作区所有文件进入暂存区 最后的点可以理解为正则里的

    2024年02月06日
    浏览(33)
  • VS Code工作区用法

    背景 VS Code可以通过\\\"文件/打开文件夹\\\"来打开本地项目,但是想要打开多个项目便需要来回切换,比较费劲。此时就可以使用工作区功能,将不同的项目放置到同一个工作区中,这样切换项目的时候就会非常方便。 操作方法 打开其中一个项目 执行命令:文件 》 打开文件夹

    2024年01月25日
    浏览(44)
  • VScode 工作区配置 和 用户配置

    通常不同的项目都有不同的配置,我一般都是使用eslint和prettier一起用,所以经常会有这几个文件: 这里简单介绍一下这几个文件的作用吧。 一般有两个文件,extensions.json和settings.json。 extensions.json 文件是用来配置推荐安装的 VS Code 插件的文件。在这个文件中,你可以列出你

    2024年01月24日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包