相关疑难解决方法(0)

让git忽略文件

我试图让git忽略我的一些文件,我找到了一个关于你如何做到这一点的描述

从:http://github.com/guides/git-cheat-sheet 到IGNORE的一些文件

在名为.gitignore的根目录中添加一个文件并向其中添加一些文件:(注释以哈希开头)*.log db/schema.rb db/schema.sql

Git自动忽略空目录.如果您想拥有一个日志/目录,但想要忽略其中的所有文件,请将以下行添加到根.gitignore :(以'!'开头的行是例外)

log/*!.gitignore

然后在空目录中添加一个空的.gitignore:

触摸日志/ .gitignore

所以我在我的项目文件夹中创建了一个名为.gitignore的文件,并在其中写了以下内容:

phpMyAdmin/*
nbproject/*
inc/mysql_config.php
!.gitignore
Run Code Online (Sandbox Code Playgroud)

但是当我提交时,文件会从提交中排除...

git

20
推荐指数
2
解决办法
4万
查看次数

如何仅删除远程存储库中的文件?

可能重复:
Git:从存储库中删除文件而不从本地文件系统中删除它

我希望从远程存储库中删除文件而不从本地副本中删除文件.有没有办法在git中这样做?

原因是:我正在进行早期项目.我提交了一些不应该在存储库中的文件,所以我将这些文件添加到了.gitignore.如果我从本地副本中删除这些文件,该程序将无法正常工作.

感谢大家.这个问题是重复" 从Git存储库中删除文件而不从本地文件系统中删除它 "

git

12
推荐指数
1
解决办法
2万
查看次数

从 Git 中删除文件,但不删除远程用户,只是忽略它

我和其他几个人都可以访问包含 IDE 自动生成的一个文件的存储库。该文件是特定于 PC 的,因此不应位于源代码管理中,但目前是。我想删除它并将其添加到.gitignore,但我不希望其他协作者在拉取我的更改时将其删除。关于删除文件但保留本地副本存在很多问题;但他们不覆盖其他用户,所以当他们拉动时,尽管我保留了我的副本,他们仍然会丢失副本:

从 Git 存储库中删除文件,而不将其从本地文件系统中删除

如何 git rm 文件而不将其从磁盘中删除?

还有一些问题和解决方案,可以在拉取时不丢失本地文件,这样他们就可以保留文件,但这需要拉取时的明确操作,我不想去告诉每个人到底如何拉取这个文件时间。我确实发现了两个重复的问题。得到的答案是不可能,但那都是 5 年前的事了——这期间有什么变化吗?

Git 删除跟踪的文件,但保留本地和远程

Git 忽略文件,而不删除它

这很重要,因为该文件是在您首次导入整个项目时自动生成的,并且包含有关本地编译器/库版本的信息。所以删除它需要重新导入。如果有什么区别的话,那就是.idea/scala_compiler.xmland .idea/scala_settings.xml(实际上整个.idea目录应该被忽略)。基本上我想让 Git 将一个文件设置为不再跟踪,但不为任何人删除它。

git ignore intellij-idea

9
推荐指数
1
解决办法
3046
查看次数

最终追溯 .gitignore(如何让 Git 完全/追溯忘记现在 .gitignore 中的文件)

前言

这个问题试图消除关于追溯应用 .gitignore 的混淆,而不仅仅是现在/未来。1

基本原理

我一直在寻找一种方法来追溯强制执行我当前的 .gitignore ,就像我在第一次提交中创建了 .gitignore 一样

我正在寻求的解决方案:

  • 不会需要手动指定文件
  • 要求提交
  • 将追溯适用于所有分支的所有提交
  • 忽略工作目录中指定的 .gitignore 文件,而不是删除它们(就像最初提交的根提交的 .gitignore 文件一样)
  • 将使用 git,而不是 BFG
  • 将适用于 .gitignore 异常,例如:
 *.ext
 !*special.ext
Run Code Online (Sandbox Code Playgroud)

不是解决方案

git rm --cached *.ext
git commit
Run Code Online (Sandbox Code Playgroud)

这需要 1. 手动指定文件和 2. 附加提交,这将导致在其他开发人员拉取时删除新忽略的文件。(它实际上只是一个git rm- 这是从 git 跟踪中删除- 但它会将文件单独留在本地(您的)工作目录中。 之后其他git pull将收到文件删除提交)

git filter-branch --index-filter 'git rm --cached *.ext' …
Run Code Online (Sandbox Code Playgroud)

git gitignore

8
推荐指数
2
解决办法
3439
查看次数

为什么git不会忽略这些文件?

我的.gitignore文件包含以下行:

 xcuserdata/**/*
 !xcuserdata/**/xcschemes/*
Run Code Online (Sandbox Code Playgroud)

但仍会跟踪以下文件 /MyApp/MyApp.xcodeproj/xcuserdata/colas.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist

为什么会这样?我该如何解决这个问题?

PS:如果有的话MyApp.xcodeproj/xcuserdata/colas.xcuserdatad/xcdebugger,文件会被忽略.但我不明白为什么没有这个"黑客"就不会忽视它们.


编辑1

与其中一个答案所说的相反,即模式

 xcuserdata/**/*
 !xcuserdata/**/xcschemes/*
Run Code Online (Sandbox Code Playgroud)

工作!!! 我的意思是,/xcschemes跟踪下的文件.

另请参阅Gcode忽略文件的Xcode项目,我在这里得到这个.gitignore文件.

编辑2

我的Git版本是1.8.3.4 (Apple Git-47).

编辑3

当我git check-ignore这个文件时,这就是我得到的

  fatal: Not a git repository (or any of the parent directories): .git
Run Code Online (Sandbox Code Playgroud)

但事实是父目录是一个git目录......

编辑4

当我git check-ignore --no-index --这个文件时,这就是我得到的

[MT] PluginLoading: Required plug-in compatibility UUID 37B30044-3B14-46BA-ABAA-F01000C27B63 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/XcodeSnippetsHelper.xcplugin' not present in DVTPlugInCompatibilityUUIDs
2014-02-10 10:03:50.856 xcodebuild[1496:d07] XcodeColors: load (v10.1) …
Run Code Online (Sandbox Code Playgroud)

git xcode

6
推荐指数
2
解决办法
2726
查看次数

如何使用Visual Studio Tools for Git将跟踪文件移动到未跟踪

开始尝试使用git.无意中将项目中的所有文件添加到了团队资源管理器中的"包含的更改".我在最初的提交中承诺了所有.其中一个文件是SQL CE 4.0(基于文件)数据库.我明显在那里搞砸了.我不想跟踪数据库,也不想最终将数据库恢复到以前的某个点.

我的问题是我不知道如何将SQL CE 4.0 sdf文件从包含的更改移动到未跟踪.我对git没有经验,迄今为止我所知道的是团队资源管理器UI中提供给我的东西.

那么,如何将文件从(已提交和)跟踪移动到未跟踪?在成功操作结束时,我希望将sdf文件放在"未跟踪"的bin中,并希望将其从已经被推送到远程仓库的提交中删除.我只是不确切地知道从哪里开始和做什么

git sql-server-ce team-explorer visual-studio-2013

6
推荐指数
1
解决办法
7312
查看次数

git rm --cached .gitignore 中列出的所有内容

在我提交所有内容后,我将.gitignore添加到我的项目中。现在我想运行如下命令:

git rm --cached *everything_listed_in_gitignore*
Run Code Online (Sandbox Code Playgroud)

如何做到这一点?先感谢您。

git git-rm

6
推荐指数
3
解决办法
2181
查看次数

什么是 git-cache 以及 git-cache 中存储了什么

事实上,我读了很多关于 git 的东西。

我知道我可以通过命令删除缓存,但我无法理解git-cachegit rm --cached .的概念。

什么是缓存?而GIT中的缓存位置又在哪里呢?该缓存是存储在 RAM 中还是文件中?git 中使用缓存来提高性能吗?

缓存中存储了什么?

git

6
推荐指数
1
解决办法
9309
查看次数

从 git repo 中获取文件并 git 忽略它而不从文件系统中删除它

因此,一个配置文件以某种方式进入了我们不想要的 git 存储库。但我们确实希望在我们的个人系统上使用它。

当我们的团队成员执行拉取操作时,有没有办法将文件从存储库中取出,而不会导致文件从单个存储库中删除?

非常感谢!

git

5
推荐指数
1
解决办法
507
查看次数

Git:从存储库中删除文件/文件夹,但在运行git pull时不从git clones中删除

我添加并提交了一个错误的文件夹.修复.gitignore文件后,我需要从存储库中删除这些文件,但我不希望git pull在服务器上运行时删除这些文件.

我已经尝试了--cached这里建议的标志从Git存储库中删除文件而不从本地文件系统中删除它

但它只是不起作用.我删除了该文件rm --cached file.我承诺被删除的事实.但是当git pull它从服务器中删除该文件时.

更新示例:SF2参数文件(应忽略​​,因为它因机器而异)

  • app/config/parameters.yml - .gitignore中应忽略的文件
  • 被意外地推入存储库
  • 修复.gitignore文件
  • 我需要从存储库中删除它,但是当我git pull在服务器上执行时,不应删除该文件.
  • 在这个例子中,只需一个文件即可在服务器上手动备份,git pull(文件被删除),恢复备份非常简单.
  • 但在我的情况下,有很多不同的文件夹/文件.

服务器是指存储库的克隆,而不是存储库本身.它只是克隆了存储库的另一台机器

更新简短说明:

让我们考虑repo-server | local-machine | deploy-server..我想通过local-machine存储库中的一些文件删除(如果另一个local-machine-2 git clone存储库它没有获取这些文件),但是当我更新deploy-server通道时git pull我不希望从存储库中删除这些文件deploy-server

git

5
推荐指数
1
解决办法
640
查看次数