git删除未跟踪文件文件会消失吗

git删除未跟踪文件文件会消失吗,第1张

会。根据查询相关资料显示,git删除未跟踪文件文件会消失。Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

工作目录下的文件有两种状态:untrack(未跟踪)和已跟踪(tracked).

未跟踪文件是指在上次快照中没有记录,在下次要提交的快照即暂缓区也没有记录的文件。

已跟踪文件是指已被纳入版本控制的文件,可以是已上传到远程仓库的文件,可以是已修改但未暂缓区的文件,可以是放入暂缓区的文件。

从远程仓库克隆一个项目到本地,刚克隆下来时,所有的文件都未被修改,是最初始的状态,因为文件都已在远程仓库,所以此时文件属于已跟踪状态。

当对某个文件做了修改之后,git将这些文件标记为已修改的文件,然后放入暂缓区,然后提交暂缓区的快照。

文件生命周期如下图:

git status : 用来查看文件状态的命令

以一个例子来说明:

首先,从远程克隆一个项目到本地:git clone  url        #git仓库地址

1.刚克隆下来时,文件状态查看 

此时,暂缓区无文件,无文件被修改,所有文件都是已跟踪状态。

2.创建一个不存在的新文件test.txt,查看此时文件状态

可见,文件在untracked files下面,处于未被跟踪的状态,红色显示。未跟踪意味着之前的快照提交记录中没有这个文件,git不会自动讲从未跟踪过的文件自动添加到暂缓区,需要手动告诉它需要跟踪这个文件。当然,如果不需要跟踪,就不需要告诉它。添加到暂缓区需要用到命令 git add  文件

此时,文件出现在changes to be committed,说明是已被跟踪状态(属于已修改未提交,处于暂缓区的情况),绿色显示。这些文件将在下一次快照提交时提交。

3.处在暂缓区的文件提交

git commit是提交暂存区的文件快照。commit完之后查看文件状态

文件全部已跟踪(已提交到git存储库,但未推送到仓库),但是根据提示还未推送,推送完成即可永久保留在远程仓库中。

4.文件被跟踪过,本次版本做了修改

该文件已被跟踪,在历史版本快照中有记录,做了修改后,可见在 changes not staged for commit下面。说明,文件内容做了修改但是未存到暂存区,属于已跟踪未放到暂存区(not staged)。可使用git add将文件放到暂存区。所以,git add可以用来跟踪新文件,也可以把已跟踪文件放到暂存区。

5.文件推送到git仓库

git push origin master

推送完成后在远程仓库可看到新增的文件,git status 查看此时状态

工作目录非常干净,暂缓区无文件,无文件被修改,所有文件都是已跟踪状态。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11740274.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存