一天入门到精通,完全掌握版本控制系统Git,熟练使用 ...
来源:http://www.tudoupe.com时间:2021-12-26
我最近学会了在 JAVA 的程序, 但我不确定我会用它做什么。写了几个小代码,我想把一切都留着以后有机会了,还可以进行进一步的维修和升级。所以我考虑过吉特Hub前面发现,这是一种把事情理清的方法 这样我就可以更好地处理事情了
使用 Markdown 文本编辑器
以及
使用 Snipaste 工具
,乘着这个机会,吉特和吉特Hub合并
文章目录
- 版本控制系统
- 本地版本控制系统
- 中央化的版本控制系统
- 分布式版本控制系统
- Git 简介
- Git是什么?
- 直接记录快照,而不是差异比较
- 几乎所有行动都是在地方一级进行的。
- 保证完整性
- Git通常只是简单地补充数据。
- 三种状态
- 三个阶段
- 远程仓库
- Git 下载
- 安装了 Git Windows 平台 。
- GitHub Desktop
- Git 配置
- 配置用户信息
- 查看配置信息
- 文本编辑器
- 获得帮助
- Git 工作流程
- 获取Git仓库
- 在已有目录中创建仓库 。
- 克隆现有的仓库
- 跟踪每个仓库的更新情况。
- 检查当前文件状态
- 跟踪新文件
- 暂存已修改的文件
- 状态简览
- 见已保存的修改和尚未保存的修改。
- 提交更新
- 跳过使用暂存区域
- 移除文件
- 删除跟踪
- 移动文件
版本控制系统
在软件开发期间,版本控制是指管理各种程序代码、配置文件和描述性文件的变化。
报到和离职限制、分支和合并以及历史数据是版本控制的核心组成部分。
履行上述职责的系统称为版本控制系统。
本地版本控制系统
例如,RCS比较普遍。逻辑是保存硬盘上的补丁(补丁与文件修订前后的修改相对应);通过应用所有补丁,文档的版本可以重新计算。
缺点包括只能由一个人使用,而不能支持团队成长;如果是另一台计算机,则很难开发,所有文件改变信息全体会议在计算机损坏时丢失的信息并不安全。
中央化的版本控制系统
Centralized Version Control Systems,简称 CVCS,所有文件修改都保存到单一的中央控制服务器 。客户端在与员工合作时连接到此服务器 。CVS, Subversion, 和Perforce是其中三个。
缺点是单点故障, 这意味着如果服务器关闭, 服务器无法更新, 无法同时运行 。 如果服务器的硬盘被销毁, 整个文件更改信息将丢失 。
分布式版本控制系统
Git、Mercurial、Bazaar和Darcs是家庭暴力、脆弱性和适应服务的例子。
客户不仅提取了最新版本的文件快照,而且还提供了代码仓库的完整镜像,包括所有历史数据。
如果共同工作服务器失败, 任何镜像都可以用于恢复本地仓库。 因为每个复制过程都是代码仓库的完整备份 。
此外,其中许多系统可以与各种远程代码仓库进行通信。 比如,Git,中国用户可能无法进入Github, 与Github的远程仓库同步,同时使用Gite的远程仓库。
同样,您也可以在同一项目下与多个工作组合作。
各种协作程序,例如横向模式工作流程,也可以根据需要加以配置,早期集中化系统无法做到这一点。
我们在学习了版本控制系统的基本功能和分类之后,集中注意了Git。
Git 简介
Git是一个开放源码的分布式版本控制系统。
Git是什么?
直接记录快照,而不是差异比较
Git与其他版本的控制系统(包括Subversion和近似工具)的主要区别在于Git如何处理数据。 从概念上来说,大多数其他系统在文件更改列表中保留信息。这些系统(CVS、Subversion、Perforce、Bazaar等)将所含信息视为基本文件的收集以及每份文件随着时间的推移获得的变异(通常称为基于三角洲的版本控制)。
Git 更接近于将数据视为小文件系统的快照。 当您提交更新或保存 Git 的项目状态时, 它会生成当时所有文件的快照, 并存储快照索引 。
Git 将不再恢复文件, 如果它因效率原因没有被编辑的话, 而只保留一个链接, 指向先前保存的文件 。
Git处理数据 更像一系列的快照。
这是Git与几乎所有其他版本的控制系统之间的一个重大区别。因此,Git重新考虑了继续维持控制系统每个前一版本的若干部分。Git更像迷你档案系统它包含了在这个基础上开发的一些最强大的工具。这不只是任何老的VCS。例如,Git分行行政部门的情况。这种数据处理方法可能真正有益。
几乎所有行动都是在地方一级进行的。
绝大多数Git活动仅涉及当地的档案和资源存取,不需要网络上其他机器的信息。
然而,Git对中央版本控制系统具有很大的性能优势,因为您在本地磁盘上有完整的项目历史,所以大多数操作似乎马上完成。
这意味着你几乎可以做任何事情 当你没有连接到互联网 或没有VPN。
保证完整性
在用 Git 存储任何数据之前,先计算校验和。然后计算和引用总额作为支票。这意味着在Git不知情的情况下不得更改文件或目录内容 。3⁄4 ̄ ̧漯B它是基特哲学的基本组成部分。如果信息丢失或文件在传输过程中受损,Git 就能发现。
SHA-1 hash(hash)是Git用来计算校验和的方法。哈希)。此字符串由 40 个十六进制字符( 0- 9 和 a- f) 组成 。取决于 Git 中的文件内容或其目录结构 。这是SHA -1HAshi的表情:
24b9da6552252987aa493b52f8696cd6d3b00373
此 Hashi 值经常被 Git 使用, 并可在多个地方找到 。 事实上, Git 数据库中的信息是按文件内容的 Hashi 值而不是文件名索引的 。
Git通常只是简单地补充数据。
Git 程序几乎完全通过将数据添加到 Git 数据库完成。 使用 Git 将数据从数据库中删除是不可能的, 这意味着 Git 几乎永远不会进行任何可能使文件无法恢复的活动 。
如果没有发布更新, 更改可能会丢失或中断。 但是, 如果您向 Git 提交一份快照, 数据将很难再次丢失, 特别是如果您经常将数据库迁移到不同的仓库 。
三种状态
文件可在三个状态中的状态之一:提交、更新或保存。
- 更改的文档显示,它已经修改,但没有保存在数据库编辑文档中,显示它已经修改,但没有保存在数据库中。
- 待定指标表明,已对修改文件的当前版本贴上标签,以便列入下一份快照呈件。
- 根据所提供的信息,这些数据已安全保存在当地数据库中。
三个阶段
吉特项目分为三部分:一个工作空间、一个临时储存区和一个吉特目录。
工作区,又叫工作目录,是项目版本或分支的节录简单理解,这是您要开发或编辑代码的目录 。此目录包含一个工程版本 。或某个分支,当您在版本或分支之间切换时,此目录包括从 Git 仓库压缩数据库中提取的某版本或分支的文件 。将其放入此目录, 用于使用或修改 。使用的命令是
Git checkoutSuspense 区域是 Git 仓库目录中的一个文件, 保存要提交文件的列表。 Git 使用“ index” 一词, 但通用短语是“ 暂停区域 ” 。 添加要提交的文件清单的顺序是 :
Git add <file>Git 将项目元数据和对象数据库保存在 Git 仓库目录中。 这是 Git 最重要的元素, 数据来自其他计算机克隆仓库。 创建本地仓库是最初的命令 。
Git initgit 目录自动建立于要创建存储处的位置。
演示文稿命令将用于将文件从临时存储位置推至 Git 仓库 。Git commit。
因此,基本的基特程序如下:
- 在工作空间中,对文档进行修改。
- 保存您希望下次提交的修改 。
Git add这将简单地将修改上传到临时储存区。 - 提交更新(
Git commit),临时存储空间中的文件被发现,快照被无限期保存在 Git 目录中。
如果该文件的具体版本保存在Git目录中,则提交。
该文件如果经过编辑并放在暂记部分,则处于暂记状态。
如果上次检查后进行了修改,但未在暂记区张贴,则修改后的状况已经更新。
远程仓库
除了上述三个阶段之外,实际上,有一个远程仓库(远程仓库)。例如著名的 Github ,我们可以建立一个远程仓库。实现代码的托管。除此之外,国内还有 Gitee 这是一个长途仓储服务。当然,这两个偏远仓库也可以同时同步。
当地仓库可以与边远仓库同步,但它们也可以使用几乎所有与吉特有关的能力,而独立于边远仓库。
下图描述了四人的关系。
Git 下载
- 在使用 Git 之前, 我们必须首先安装它。 Git 目前支持 Linux/ Unix、 Solaris、 Mac 和 Windows 平台 。
- Git的平台安装软件包可在http://git-scm.org上获得。该邮件是全球之声.com/downloads.com/downloads.com/downloads.com/downloads.com/downloads.com/downloads.com/downloads.com/downloads.com/downloads.com/downloads.com/downloads.com/dloads.com/dloads.com/dloads.com/dloads.com/dloads.com/com。
- Windows安装文件的下载:MsysGit项目提供安装包,下载链接见https://gitforwindows.com.XII.A.1和Add.1.org/。
- Flickr用户pic. com/mirrors/git-for-windows/的Twitter.
安装了 Git Windows 平台 。
一旦安装, 您可以使用 git 命令行程序( 包括 ssh 客户端 ) 。
另外还有一个图形界面的 Git 项目管理工具。 在开始菜单里找到"Git"->“Git Bash”,会弹出 Git 命令窗口,你可以在该窗口进行 Git 操作。
要打开 Git Bash, 右键单击工作目录, 从菜单中选择 Git Bash 。

Git 也提供了一个图形用户界面( GUI ) 。 尽管如此, 命令行模式可以执行所有 Git 命令, 但 GUI 只能达到所有能力的一部分来减少操作困难 。
许多人经常安装不同的图形用户界面(GUI)工具,但他们都有义务使用指令线工具。
GitHub Desktop
另一个简单的方法是下载和安装 GitHub 桌面。 此安装包括 Git 的图形版本和命令行版本。 也可以通过提供一致的凭单缓存和断线来帮助 Powershell 。
可通过GitHub网站下载到Windows网站。
在第一次使用 Git 之前必须先建立 Git 环境。 每台机器只需配置一次, 当应用程序升级时配置信息会被保存。 您可以通过运行命令随时更改它们 。
Git 配置
Git 包含一个名为 git 配置的工具, 允许您配置或读取相应的工作环境变量 。
这些环境因素影响Git在整个链条上的独特方法和行为以及外观。这些变量可以储存在三个地方:
- / etc/ gitconfig 文件: 适用于系统中所有用户的配置 。如果您使用 -- system git 配置选项,那是官方文件(因为它是一个系统配置文件,这就是原因。 )要改变它,你必须是 管理者或超级用户。)
- ~/.gitconfig 文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,那是官方文件
- 当前项目( 即工作目录) 的 Git 目录中的配置文件 。 git/ config 文件 : 此配置仅适用于当前工程 。您可以使用 -- local 选项强制 Git 读写此文件 。默认情况下,用于此目的。
每个级别配置将覆盖相同的更高层配置, 所以.. git/ config 中的配置将替换 / etc/ gitconfig 中的相同名称变量 。
Git 会查找 Windows 中的 $HOME 目录( 通常是 C: USER) git config 文件 。
此外, Git 只会在 Git 安装的根目录中寻找 / etc/ gitconfig 文件 。
使用以下命令,您可以检查所有配置及其所在文件夹:
git config --list --show-origin

配置用户信息
安装 Git 后, 您首先应该做的是配置您的登录和电子邮件地址。 这很重要, 因为这个信息在每一个 Git 贡献中都会被使用, 并且被永久记录在您的每个条目中 。
个人化您的用户名和电子邮件地址:
$ git config --global user.name “java old man”
$ git config --global user.email javaoldman@163.com
如果您使用 -- global 选项, 更新的配置文件将放置在使用者的主目录中, 您的所有项目将默认使用在此设定的用户信息 。
如果您想要对特定项目使用不同的名称或电子邮件, 请删除 -- global 选项重新配置, 并保存 git/ config 文件的新更改 。
查看配置信息
$ git config --list
当您注意到多个变量名称时, 它表示它们来自不同的配置文件( 例如 / etc/ gitconfig 和.. 但最后 Git 使用了最后一个 ) 。
您也可以通过记着特定名称直接查看环境变量的设置。
$ git config user.name
文本编辑器
可以更改默认文本编辑器。当您被要求输入信息时, Git 会打电话给您。 Git 如果不指定操作系统默认文本编辑器, 则使用操作系统默认文本编辑器 。
如果您想要在 Windows 上使用另一个文本编辑器, 您必须给可执行文件提供完整路径。 这取决于您编辑器的包装方式。
就Notpad++而言,据一位著名的代码编辑说您应该考虑使用 32 位版本 。由于在撰写本报告时64位版本不支持所有插件 。如果你运行的 Windows 32 位版本,相反,在64比特的OS上,使用64比特的编辑。然后键入以下命令:
git config --global core.editor “‘C:/Program Files/Notepad++/notepad++.exe’ -multiInst -notabbar -nosession -noPlugin”
获得帮助
如果您在使用 Git 时需要帮助, 找到一份详细的 Git 指令手册( manpage) 有三种等同的方法 :
$ git help <verb>
$ git <verb> --help
$ man git-<verb>
例如,如果您想要获得 Git 配置命令的手册,请运行 。
$ git help config
如果您不需要一份完整的手册, 只需要一个可用的选择的快速参考, H 选项可以提供更简短的“ help” 输出 :
git add -h
得到运行结果如下:
Git 工作流程
一般工作流程如下:
- 将 Git 资源克隆为工作目录( 或将非版本控制本地文件夹转换为 Git 仓库 ) 。
- 将文件添加或更改为克隆资源。
- 如果情况发生变化,您可以更新资源。
- 在提交前查看修改。
- 提交修改。
- 如果修改后发现错误,可以撤回、修改和重新提交划界案。

因此,程序的第一步是取得Git仓库。
获取Git仓库
获取Git项目仓库通常有两种方法:
- 将尚未在版本控制之下的本地文件夹转换为 Git 仓库;
- 从另一个服务器复制已有的 Git 仓库 。
这两种方法都会在您的本地电脑上 产生一个备好工作的 Git 仓库。
在已有目录中创建仓库 。
如果您想要控制含有目前不受版本控制的项目的目录, 您必须先访问目录 。
例如,在 Windows 上:
$ cd /c/user/my_project
您也可以使用鼠标右键在工程目录下立即启动 Git Bash, 或者您可以直接输入工程目录 。
之后执行:
git init
程序将生成一个名称。 地盘子目录,此子目录包含您第一个 Git 仓库的全部文件 。这些文件是基特仓库的基础。 但是,在这个时候,我们刚刚做了一个初步程序您的工程文件没有被跟踪 。
如果您在文件已经存在的文件夹( 不是空文件夹) 中进行版本控制, 您应该立刻开始监控并提交文件 。 我们不会有事 。git add指示要跟踪并运行的文件的命令git commit:
git add *.c
git add LICENSE
git commit -m ‘initial project version’
现在有一个Git仓库,追踪器的文件可以与原始提交文件一起找到。
克隆现有的仓库
比如说,如果你想要一份 Git 现有仓库的复制件 来帮助一个开放源码项目,你就会需要它。git clone命令。
Git不仅复制完成你的任务所需的文件,还克隆了Git仓库服务器上几乎所有的数据。
当您使用 git clear 命令时, 远程 Git 仓库中每个文件的每个版本都将默认下载 。
实际上,如果服务器的磁盘失效,您通常可以使用任何克隆用户端重新创建服务器上的仓库(尽管服务器端的某些钩子可能丢失),但数据的所有版本仍然可用。
克隆仓库的命令是git clone <url>克隆 Git 链接库 libgit2, 执行以下命令 :
git clone https://github.com/libgit2/libgit2
URL中的第一个 libgit2 是 Github 用户名, 第二个是这个用户名下的远程仓库名 。
使用Gite作为远程仓库也是如此。
Git支持各种数据传输方法。https://agreements利用了上述例子。也可以使用 git://protocol 或 SSH 传输协议。例如,@server:path/to/repo.git。如上例也可以是:
git clone git@github.com:libgit2/libgit2.git

这将在当前名为“ libgit2” 的目录下创建一个目录 。然后在目录. git 文件夹中创建一个,从远程仓库调出所有数据并将其放置到.git 文件夹中 。在此之后,将阅读该文件的最新版本。如果您浏览到新的 libgit2 文件夹,所有工程文件都已存在 。准备今后的开发和应用。
如果您想要在克隆远程仓库时更改本地仓库的名称, 您可以使用以下选项定义新目录名称 :
git clone https://github.com/libgit2/libgit2 mylibgit
此命令的操作与上一个命令相同, 但目标目录已被更改为 Mylibgit 。
由于克隆命令自动初始化基特仓库, 基特因特命令在使用克隆获得基特仓库时, 无需初始化基特仓库 。
跟踪每个仓库的更新情况。
在计算机上,现在有一个项目Git仓库,所有文件的工作副本(取出)已经从该仓库检查出来,并保存在工作目录中。
这些文件通常经过修正,在目标阶段完成后,如要记录,可以送交仓库记录。
值得指出的是,工作目录中的每份文件都属于两类文件之一:监测或未跟踪。
所跟踪的文件是那些包含在版本控制中、记录在最后快照中的文件,其状况可能经过一段时间工作后未被改变、修改或置于悬疑区。 简言之,所跟踪的文件是Git已经知道的那些文件。
除已跟踪的文件外,工作目录中的所有文件都无法追查,既不出现在最新快照记录中,也不储存在暂记区。
当你最初克隆一个仓库时, 工作目录中的所有文件都被跟踪 并且没有被更改, 因为Git刚刚检测到它们,而你没有更新它们。
Git承认某些文件在修改后被修改过,因为您在上次提交后更改了这些文件。 通过这样做,您可以有选择地将这些更新后的文件放在暂记区,然后反复提交所有待修改的文件。
检查当前文件状态
要发现哪个文件处于什么状态, 请使用 git 状态命令。 如果此命令是在克隆仓库后不久运行的, 将会显示以下输出 :
git status
这表明你的工作目录相对干净,换句话说,自上次提交以来,没有一份跟踪文件经过修改。
此外,上述信息显示,当前目录中没有添加任何无法追踪的新文件; 否则, Git 将在此显示 。
最后,该命令显示当前分支,并告知您它与远程服务器上的相应分支没有区别(文档同步) 。 分支名称已更改为“ main ”, 默认分支名称是“ main ” 。
请记住,由于 Guthub 将默认分支的名称从母分支更改为主分支, 这是主分支, 而不是某些文章中引用的主分支 。
现在我们可以在工程目录中创建一个 README 文件( 可以在 Windows 下或直接从命令行进行, 取决于命令行的生成地点 ) 。
echo “My Project” > README
这是一条命令行命令,意思是输出字符串"My Project",但通过">"这个管道符号,将输出的字符串送到README这个文件中。
再次使用git status,您将看到一个新的不可追踪文件:
git status
新建的 README 文件可以在状态报告不可信文件下找到 。
未追查的档案表明,Git先前的快照(提交)中没有这些档案。
在你明确通知吉特之前,除非你明确告诉吉特,否则它不会包括在追踪中,除非你明确告诉它,“我需要遵循这份文件。”
这种处理不需要生产二进制文件或不希望被遵循的其他文件,但在这种情况下,我们希望对README文件采取后续行动。
跟踪新文件
命令 Git 添加后, 它开始跟踪文件。 因此, 要跟踪 README 文件, 请执行 :
git add README
当您重新运行 Git 状态命令时, 您会注意到 README 文件已被跟踪, 处于悬念状态 :
git status
它处于临时状态, 只要它是在修改中发送到此行下方。 如果您在此点提交文档, 当您执行 git 添加命令时, 版本将会保存在后一历史记录中 。
之前我们使用git init后就运行了git add <files>开始用命令监测当前目录中的文件。 git 添加命令时输入文件或目录的路径; 如果参数是目录的路径, 命令会向后跟踪目录中的所有文件 。
暂存已修改的文件
现在对跟踪文件进行修改(克隆设定的默认值全部被跟踪,是自己新设定的,可以使用 git 添加命令自动跟踪和记录)。README.md然后克隆它下来,文件 被监控,并使用它。git status来查看
git status
文件README.md线下显示的修改没有用于内存, 显示被监测的文件内容已更改, 但没有保存在临时存储空间 。
要暂存这次更新,必须执行 git 添加命令 。这是一个多功能命令, 可用于开始跟踪新文件 。相反,我们或许可以把追踪到的文件放在临时储存空间。也可以用它来指定合并期间解决的有争议的文件,等等。该订单应被解释为“在下一个提交书中准确添加材料”,而不是“在项目中添加文件”。
现在执行 git 添加命令 。README.md把它放在临时储存地点,然后检查 Git 状态输出 :
git add README.md
git status
这两份文件都存放在仓库里 下次提交时会登记在仓库里README.md保留注释 。 编辑后准备存储盘提交 。 但是, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待,等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待, 等待,
git status
现在README.md文件可在临时部分和非暂停部分中找到。
事实上, Git 在使用 Git 添加命令后, 刚存储了一个版本的您。 如果您现在提交,README.md这是您执行 Git 添加命令的最新版本 。而不是当你负责委员会的时候当前的工作目录版本 。 所以,执行 Git 添加命令,然后修改它。必须执行 Git 添加并恢复最新版本 :
git add README.md
git status
状态简览
git 状态命令的结果是彻底的, 虽然措辞有点难以理解 。 Git 允许您减少国家命令的输出, 以便快速查看更改 。 如果您使用的话 。 @ info: whatsthisgit status -s命令或git status --short如果您使用命令, 将会获得更压缩的输出类型 。
git status -s
您是否将无法查找的文件放在他们面前? Mark, 上传到临时存储区的新文件前面有一个A标记, 更新后的文件前面有一个M标记。
产出分为两栏,左栏表示临时储存空间的状况,右栏表示工作区状况,右栏表示工作区状况,左栏表示临时储存空间的状况,右栏表示工作区状况。
例如,根据上述状况报告, " README " 文件在工作领域已经更改,但还没有。并且Lib/stopgit.rb文件已经更新,现在可以查阅。羊皮文件已经被编辑了暂存后又作了修改,因此,对文件所作的一些修改仍在等待。又有未暂存的部分。
见已保存的修改和尚未保存的修改。
最好能知道为了使用Git diff工具,在哪些地方作了具体的修改。
它经常用来回答下列问题:哪些最新资料现在无法提供,哪些正在等待并准备下一次提交?
虽然Git状态以前曾通过在相应栏目中提供文件名称来解决这一问题,但git diff 能够揭示哪些行因文档补丁的格式而更明确更改。
假如再次修改README.mdgit 状态命令可以查看文件, 但不能查看缓存 。
git status
使用没有参数的 git diff 命令检查文件的哪些部分已被更改, 但还没有错开的文件 :
git diff
如你所见,比较的结果就是 增加了一行“加入这条线”。
此命令检查工作目录中当前文件与保存区域快照之间的差异。 也就是说, 更改发生后没有保存的修改 。
要检查保存的内容, 下次提交书中将包含的内容, 请使用 git diff- 级命令 。 关于待处理的文件, 此命令将不同于上次提交的文件 :
git diff --staged
请记住, Git diff 只显示尚未解决的更改, 而不是自上次提交以来所做的全部修改。 这就是为什么您偶尔保存最新文件, 并运行 Git diff 而不见结果 。
提交更新
现有储存区已完成。可以提交了。 在此之前,请确保没有其它未接收到附加文件的更新或创建文件 。否则,提交表格时将不反映这些无关紧要的修改。这些已更改但尚未保存的文件将只保存在本地驱动器上 。 所以,每次准备提交前,先看看Git状况您需要的所有文件都存储了吗?然后执行 git 命令提交 :
git commit
这将启动您选择的文本编辑器, 允许您输入提交语句 。
可以看到,默认提交信件包含 Git 状态命令的最新输出 。放在注释行里,开头还有一条空线供你输入提交说明。您可以完全删除这些注释行 。不过留着也没关系,我该如何帮助你 记住什么是这个更新?
关闭编辑器后, Git 将删除注释行,并使用您指定的提交语句创建提交书。
您也可以在委员会命令之后使用 -m 选项,在命令的同一行插入提交信息,如下所示:
git commit -m “the first commit”
你们已经做出第一笔贡献了! 可以看到,提交后它会告诉你,最新信息来源(主要)是什么?这次提供的全部SHA-1核对表(e65b856b3)是多少?以及在本次提交中,有多少文件修订过,已添加和删除的行数 。
请记住,在提交时已经拍摄了悬念区的照片,任何未停放的文件仍然处于改变状态,可在下次提交时列入版本管理,每份正在提交的文件都是可恢复或比较的项目的快照。
跳过使用暂存区域
虽然临时储存空间的设置方式可以设想能够仔细地准备提供的细节,但不可能在实际中做到临时储存空间的设置方式可以想象到如何仔细准备提供的细节,不可能做到。然而,这有时可能不方便。Git允许你避免使用临时储藏所简单地说,当它提交时,它不会发生。将 - a 选项添加到 Git 委员会,Git 将自动将以前跟踪过的所有文件组合在一起并提交 。因此,您可以跳过上方添加的步数 :
$ git status
$ git commit -a -m ‘added new benchmarks’
看到了吗?在提交“捐款”之前, Git 添加不再需要" md"了。这是因为 -- -- 一种选择,允许提交这一文件包括所有更新的文件。 这很方便,但是要小心,此选项偶尔会给提交书添加不必要的纸张 。
移除文件
要从 Git 删除文件, 请遵循这些步骤 。从先前监测的文件清单中删除它至关重要。2011年叙利亚抗议活动特别报导,然后提交。这可以通过Git rm 命令来实现。以及从工作目录中删除所选文件这将不出现在未找到的文档列表中 。
如果您只是用手从工作目录中删除文件, 这些文件将出现在“ 不卡在委员会的 Chances” 一节( 即未中止列表 ) :
$ rm PROJECTS.md
$ git status
最后,要记录此文件的删除, 请使用 git rm :
git rm PROJECTS.md
git status
下一次提交时,该文件将不再成为版本管理系统的一部分。如果您想要删除已经编辑或放置在悬念区域的文件,请遵循这些步骤。必须使用所需的删除选项-f(翻译:初始武力通知书)。这是一个安全特性。为了避免意外地删除尚未纳入快照的数据,Git将无法收回这一数据。
git rm 命令可随同文件或目录名称, 或 Glob 模式。 例如 :
git rm log/*.log
在星号 * 之前注意反斜线; Git 有自己的文件模式扩展匹配模式, 所以我们不需要 shell 来扩展它。 此命令删除日志/ 目录扩展名中的所有文件 。 log 。 类似的例子包括 :
git rm *~
此命令删除所有以字母开头的文件 。
删除跟踪
要从 Git 仓库删除文件, 请使用 git 删除命令( 即( 从临时存储设施) )但是,留在目前的工作目录中仍然是可取的。 换句话说,您想要将文件保存到磁盘 。但我不想让吉特继续跟着你当你忘记添加一些东西.. 这是gitignore文件。无意中我取了一个大的日志文件, 或其中的许多文件。 a 当这种编译生成的文件被放入悬念区时,这一做法尤其有用。 为达到这一目的,使用以下 -- -- 已显示的选项 :
git rm --cached README
移动文件
Git不公开跟踪文件移动。 当文件在 Git 重新命名时, 仓库中的元数据并不反映变化。 但是, 该死, 他是一个天才。 他会发现发生了什么事情 。
在这种情况下, 当您遇到 Git 的 mv 命令时, 您可能会感到困惑。 要修改 Git 的表演百科全书名称, 请做以下操作 :
git mv file_from file_to
事实上,即使你看一下目前的状况信息,你也可以清楚地看到描述的改名程序:
git mv README.md README
git status
在现实中,执行 git mv 等于运行以下三个命令,执行 git mv 等于运行以下三个命令:
mv README.md README
git rm README.md
git add README
如此分开操作,您也将注意到已经重命名过 。因此,结果在各个方面都是相同的。两者之间的唯一区别是:这是命令 不是命令 It's a command, not a command.直接使用 git mv 简单得多。然而,当使用其他程序重命名文件时,确保在提交新文件前删除上一个文件名 。此函数在 git 添加时添加一个新的文件名 。
相关新闻
- 2022-01-29 Windows 11更新系统版本的教程
- 2022-01-29 Python学习八:pip 最常用命令、pip升
- 2022-01-28 GitLab集成Jenkins进行项目构建、发布
- 2022-01-28 小白一键重装系统教程win10安装步骤
- 2022-01-27 便是三步装机系统下载地址和安装
- 2022-01-27 老毛桃u盘启动盘制作工具装机教程
- 2022-01-27 windows环境下jenkins+maven+svn+tomcat实现
- 2022-01-27 windows2016官网下载
- 2022-01-26 libevent在windows下的接口及兼容性、
- 2022-01-26 markdown编辑软件在哪下载?
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
