我做了什么: 我觉得有一些来自github gui的奇怪的configuration,导致这个问题,并阻止我能够轻松地从命令行使用git甚至git-bash。 我结束了刚卸载github和git,然后重新安装只是git的Windows。 我现在有一切从命令行运行(除了我从git-bash运行的ssh除外)。 github gui更容易也更可靠。 多亏了mu没有花时间来弄清楚这一点。 我没有结束使用他的答案,但如果我不需要重新安装git,那将是我需要做的。 我在本地机器上使用github gui。 我只是注意到,我正在做的提交将要更新我所有的最近更新节点模块。 我设置我的.gitignore忽略整个node_modules/目录。 我不知道该怎么做。 包含在.gitignore中的所有文件types都被忽略。 这只是它似乎忽略的目录。 这是我的.gitignore文件: ################# ## Sublime Text ################# *.sublime-project *.sublime-workspace ################# ## Images ################# *.jpg *.jpeg *.png *.gif *.psd *.ai ################# ## Windows detritus ################# # Windows image file caches Thumbs.db ehthumbs.db # Folder config file Desktop.ini # Recycle Bin used […]
我有一个中间有空格的文件夹,但是里面有一个webconfig文件。 我想让git忽略webconfig文件,但不知何故,它不会因为文件夹中的空间而忽略它。 任何人都知道如何解决这个问题? My FolderName/Web.config 我试图插入%20在中间,但没有帮助。 感谢您的帮助。
不pipe我把什么放在.gitignore我不能让git忽略下面的UserInterfaceState.xcuserstate文件: $ git status On branch master Your branch is up-to-date with 'origin/master'. Changes not staged for commit: (use "git add <file>…" to update what will be committed) (use "git checkout — <file>…" to discard changes in working directory) modified: .gitignore modified: CalFoo.xcodeproj/project.xcworkspace/xcuserdata/wcochran.xcuserdatad/UserInterfaceState.xcuserstate 我正在使用/编辑此post中列出的.gitignore文件。 我尝试了所有匹配的模式,包括确切的path名: CalFoo.xcodeproj/project.xcworkspace/xcuserdata/wcochran.xcuserdatad/UserInterfaceState.xcuserstate无济于事。 这个特殊的问题来自Xcode用于创build初始git .gitignore的工作stream程,之后添加来自这里的.gitignore文件。 在这个问题中可以find一个更一般的回答忽略以前跟踪的文件(我猜我从来没有在我的search中find这个职位,因为它没有标题中的“gitignore”)。
当我尝试这样做时,出现以下错误: 显然,Windows资源pipe理器不允许我创build这种types的文件模式。 我怎样才能克服这个问题?
这个问题在这里和这里以类似的forms出现,但是它们似乎与我所寻找的不匹配。 我在一个Ruby静态站点生成器StaticMatic中做项目。 基本上,这只是一个带有Haml模板,Sass和CoffeeScript的src /目录。 StaticMatic提供了一个开发服务器来将这些编译成一个静态的站点,以及一个在build /中生成静态站点的构build命令。 我对StaticMatic的修改是允许添加src / _modules / foo /,它可能包含src / _modules / foo / bar.haml。 运行服务器或构build站点时,会在src / bar.haml中创build一个符号链接,该链接指向foo /中的文件。 到现在为止还挺好。 (冲突处理等) _modules /中独立目录背后的原因是它们可以作为git子模块进行跟踪,并由其他团队独立检出。 实质上,这允许多个团队在不同的页面(实际上是JS应用程序)在一个静态站点上工作,而不需要重复主布局等。 顺便说一下,git想把这些符号链接看作是文件。 例如, git status显示: # On branch master # Untracked files: # (use "git add <file>…" to include in what will be commited) # # src/_modules/bar/foo.haml # src/foo.haml […]
在我的项目的根目录中有一个foo文件夹。 在foo文件夹里面我有一个bar文件夹。 我想忽略我的bar文件夹内的所有文件的所有更改。 我在我的gitignore有这个: /foo/bar 该文件夹被选中:它存在,它有文件被忽略。 gitignore是commit 。 但是,我有一个文件,我做了一个moification,并在我的bar文件夹。 当我input git status 在我的git bash里面我看到了应该被忽略的文件。 可能是什么原因,我怎样才能成功地忽略我的酒吧文件夹内的所有文件? 请注意,这些文件以前被同一行忽略,但我不得不临时删除该行来commit服务器上的东西。 commit ,我把线路gitignore 。 这是前一阵子,但现在我已经观察到,这些文件将在git status 。 我希望能够修改忽略的文件,而不会出现在git status 。
我已经阅读过几次这些文档,但是我仍然不完全明白这些不同命令之间的差异。 也许这只是我,但文件可以更清晰: http://git-scm.com/docs/gitignore https://help.github.com/articles/ignoring-files 而且,这个问题上的很多评论似乎都是用“索引”,“承诺”,“跟踪”这个词来略微松散一些,这就使得这三者之间的分歧不甚清楚。 我目前(固然有限)的理解: 在.gitignore匹配的文件将不会被跟踪。 (虽然他们以前可能已经被跟踪了。)这意味着他们将不会在未来的git status列表中显示出来。 但是,未来的变化仍然会与远程回购同步 。 换句话说,这些文件仍然被“索引”,但是它们不被“追踪”。 由于.gitignore文件位于项目目录中,因此文件本身可以进行版本控制。 在.git/info/exclude匹配的文件也不会被“跟踪”。 另外,这些文件不会被远程同步,因此绝不会被任何其他用户看到。 这些文件应该是特定于单个用户的编辑器或工作stream程的文件。 由于它位于.git目录中,因此exclude文件本身不能进行版本控制。 已经assume-unchanged运行的文件也不会在git status或git diff显示出来。 这与exclude似乎相似,因为这些文件既不是“索引”也不是“跟踪”的。 但是,在assume-unchanged之前要提交的最后一个版本的文件对于回购中的所有用户都将保持可见。 我的问题: 上述解释是否正确? 请纠正我 如果一个文件已经在一个提交中,那么匹配它在.exclude和运行assume-unchanged之间的function有什么不同? 为什么会更喜欢一种方法到另一个? 我的基本用例是,我想避免编译文件的差异,但我仍然希望这些编译的文件与源文件同步。 gitignore的d文件还会被推送吗? 如果没有,如何pipe理编译文件的最终部署? 在此先感谢您的帮助。
Git仓库中的.gitignore文件中的/dir和/dir/有区别吗? 以下情况如何? /dir /dir/ /dir/*
我需要忽略git中的文件! 我不认为实际上忽略是正确的。 我想要在git中的文件,但我不希望能够提交更改。 对某些人来说,这可能看起来像一个奇怪的事情,但是我需要这个function的有很多很多的例子。 我现在需要的一个例子是在CMS中使用git; 如果文件不断变化,CMS将无法正常工作,但是我不希望这些文件在初始提交后被提交。 (这与SVN和龟很容易做到)。 工作stream程: 获取运行该应用程序所需的所有文件。 提交时忽略指定的目录/文件。 这是我试过的: .gitignore – 文件永远不会进入混帐。 如果文件已经在caching中,则.gitignore文件不会执行任何操作。 /.git/info/exclude – 与.gitignore相同的问题,但仅限于本地回购。 分支 – master => LocalIgnores => WorkingBranch。 当工作分支与主服务器合并时,从LocalIgnore所做的更改最终会在主服务器上完成。 而且,当您签出其中一个新分支时,删除的文件将被删除而不是被忽略。 第三方文件结构 – 根节点上的第三方目录,其中包含所有重要的第三方文件的副本,以便它们可以复制到使用.gitignore文件的工作目录中。 (这一个工程,但必须有一个更容易/更好的解决scheme)。
我对使用.git/info/exclude和.gitignore来排除文件的优点和缺点感到困惑。 他们都是在仓库/项目的水平,所以他们有什么不同,我们应该什么时候使用.git/info/exclude ?