如何从项目中删除Git跟踪?

dau*_*777 610 git

我想从项目的目录中删除Git跟踪.这样做的正确方法是什么?我可以执行shell命令,例如

rm -rf .git
Run Code Online (Sandbox Code Playgroud)

从我的项目目录或有没有办法作为Git命令执行此操作?

我用这个项目来学习Git并意识到我在项目的早期出现了一些错误,包括移动,重命名和删除的文件.我想删除所有Git跟踪并重新开始git init.

bob*_*vil 618

Git用于存储信息的所有数据都存储在其中.git/,因此删除它应该可以正常工作.当然,请确保您的工作副本处于您想要的确切状态,因为其他所有内容都将丢失..git文件夹已隐藏,因此请确保您打开该Show hidden files, folders and disks选项.

从那里,您可以运行git init以创建一个新的存储库.


Lil*_*ard 384

rm -rf .git应该足够了.这将吹走所有与Git相关的信息.

  • `-r`表示"递归",所以它会删除文件夹的全部内容而不是错误输出,因为文件夹不为空,而`-f`使得它不会询问您是否确实要删除内容. (12认同)
  • 这适用于你在MAC,Linux o unix之类的操作系统 (11认同)
  • 如果你在Windows上有"Git Bash",它也会起作用. (9认同)
  • `-rf` 是什么意思? (2认同)

Joh*_*Yin 67

这不是一个明智的选择所有动.git*的手,特别是当这些.git文件是隐藏在子文件夹,就像我的情况:当我通过作曲家+ git的安装骨架的Zend 2,有相当数量的.git在文件夹和子创建的文件文件夹.

我试过rm -rf .git我的GitHub shell,但shell无法识别-rfRemove-Item 的参数.

www.montanaflynn.me介绍了以下shell命令,.git递归方式删除所有文件一次!它确实有效!

find . | grep "\.git/" | xargs rm -rf
Run Code Online (Sandbox Code Playgroud)

  • 危险!`grep .git`会在文件名中间匹配`legit.gif`或anithing和'git'等文件!请删除或编辑答案! (14认同)
  • _"我在我的Github shell上尝试了'rm -rf .git',但shell无法识别Remove-Item的参数'-rf'."_那是因为`rm`是`remove-item的PowerShell别名`.`-rf`是*nix shell`rm`参数.对于PowerShell,请改用`rm -recursive -force`. (5认同)
  • 更新只匹配git dirs:find.| grep"\ .git /" (3认同)
  • 仍然不够安全:这将捕获以`.git`结尾的文件和目录.它应该是`grep"^\.git /"`; 甚至更好(也更快)的是在`find`调用中按名称过滤:`find.-name .git`. (3认同)

Mat*_*t C 67

除了以下步骤,您可能还想删除.gitignore文件.

  • 如果要删除项目中的任何Git跟踪,请考虑删除.gitignore文件.

  • **如果你想要重新注册Git进入项目,请考虑保留.gitignore文件.

某些框架可能会自动生成.gitignore文件,因此您可能希望保留它.


基于Linux,Mac或Unix的操作系统

打开终端并导航到项目目录,即 - cd path_to_your_project.

运行此命令:

rm -rf .git*
Run Code Online (Sandbox Code Playgroud)

这将从项目中删除Git跟踪和元数据.如果要保留元数据(例如.gitignore和.gitkeep),则只能通过运行删除跟踪rm -rf .git.


视窗

使用命令提示符

rmdirrd命令将不会删除/你指定的目录中删除任何隐藏的文件或文件夹,所以你应该使用的del命令,确保所有文件都从删除.git的文件夹.

  1. 打开命令提示符

    1. 点击Start然后点击Run或点击Windows键关键,r同时.

    2. 键入cmd并回车

  2. 导航到项目目录,即 - cd path_to_your_project

  1. 运行这些命令

    1. del /F /S /Q /A .git

    2. rmdir .git

第一个命令删除所有文件和文件夹.git文件夹.第二个删除.git文件夹本身.

没有命令提示符

  1. 打开文件资源管理器并导航到您的项目

  2. 显示隐藏文件和文件夹 - 有关可视指南,请参阅此文章

    1. 在工具栏上的视图菜单中,选择 Options

    2. 在该Advanced Settings部分中,Hidden files and FoldersFiles and Folders列表下找到并选择Show hidden files and folders

  3. 关闭选项菜单,您应该看到所有隐藏的文件夹和文件,包括.git文件夹.

    删除.git文件夹删除.gitignore文件**(请参阅本答案顶部的注释)

  • 你也可以执行“rd /s /q .git”,这会清除文件夹及其中的所有内容 (2认同)

Eme*_*ine 12

解决这个问题最简单的方法是使用命令行。输入这个命令

rm -R .git/
Run Code Online (Sandbox Code Playgroud)

或者

rm -rf .git/
Run Code Online (Sandbox Code Playgroud)


can*_*ler 12

MacOS:要删除版本跟踪,您需要删除 Git 目录。为此,打开终端并输入您的项目文件。之后,您需要删除 Git 目录。

例子:

在此输入图像描述

在终端中快速写入(-r:递归,-f:强制,星号以 .git 目录开头):

rm -rf .git* 
Run Code Online (Sandbox Code Playgroud)

结果是 Git 目录和版本跟踪被删除。

在此输入图像描述


Nit*_*mar 10

我正在使用Linux环境。我以递归方式删除了所有Git文件和文件夹:

rm -rf .git

rm -rf .gitkeep
Run Code Online (Sandbox Code Playgroud)


Kam*_*ngi 8

从根文件夹运行

find . | grep .git
Run Code Online (Sandbox Code Playgroud)

查看匹配项并确认它仅包含您要删除和调整以适应的那些文件。一旦满意,运行

find . | grep .git | xargs rm -rf


Ruk*_*lla 6

在Windows环境中,您只需输入以下内容即可从项目目录中删除Git跟踪。

rd .git /S/Q
Run Code Online (Sandbox Code Playgroud)