Ionic项目的Git忽略

Ionic项目的Git忽略,git,ionic-framework,Git,Ionic Framework,我是一些新的应用程序与离子和非常新的主题的Git存储库。当我提交时,无休止的文件被上传——我发现很难确定项目中有哪些更改 所以我想在这里寻求帮助,如果文件默认存在,是否有一个忽略文件的指南,在哪里,因为大部分工作都是在www文件夹中完成的 如果问题很简单,很抱歉,但我需要帮助来解决此问题。您可以使用此选项 node_modules/ temp/ *.DS_Store *.log *.swp 有关更多详细信息,请查看此链接。这里的问题是,如果您已经添加了所有这些文件,那么一旦您放置了.gitig

我是一些新的应用程序与离子和非常新的主题的Git存储库。当我提交时,无休止的文件被上传——我发现很难确定项目中有哪些更改

所以我想在这里寻求帮助,如果文件默认存在,是否有一个忽略文件的指南,在哪里,因为大部分工作都是在
www
文件夹中完成的


如果问题很简单,很抱歉,但我需要帮助来解决此问题。

您可以使用此选项

node_modules/
temp/
*.DS_Store
*.log
*.swp

有关更多详细信息,请查看此链接。

这里的问题是,如果您已经添加了所有这些文件,那么一旦您放置了
.gitignore
,它将无法按您想要的方式工作。您需要将
.gitignore
放在项目的最开始处

因此,我的建议是:在Git中创建另一个项目,只需再次上传项目并创建
.gitignore
文件。我是根据自己的经验告诉你的

您应该在该
.gitignore

node_modules
.tmp
.sass-cache
**/bower_components or sometimes it is lib/**
platforms
plugins
*.swp
*.swo
*.log
*.DS_Store
要创建此文件,您可以从Git或终端执行:

  • 在终端中,导航到Git存储库的位置
  • 输入
    $touch.gitignore
    以创建
    .gitignore
    文件

  • 在使用Ionic 2时,scaffolder(starter)项目提供了一个现成的.gitignore文件。它几乎涵盖了人们希望取消跟踪的所有基本文件

    starter项目中的.gitignore文件应如下所示:

    # Specifies intentionally untracked files to ignore when using Git
    # http://git-scm.com/docs/gitignore
    
    *~
    *.sw[mnpcod]
    *.log
    *.tmp
    *.tmp.*
    log.txt
    *.sublime-project
    *.sublime-workspace
    .vscode/
    npm-debug.log*
    
    .idea/
    .sass-cache/
    .tmp/
    .versions/
    coverage/
    dist/
    node_modules/
    tmp/
    temp/
    hooks/
    platforms/
    plugins/
    plugins/android.json
    plugins/ios.json
    www/
    $RECYCLE.BIN/
    
    .DS_Store
    Thumbs.db
    UserInterfaceState.xcuserstate
    
    关于如何启动脚手架工Ionic 2项目,鉴于您已安装了所有必备的npm模块:

    $ ionic start MyProject --v2
    

    在刚刚创建的新目录MyProject/created中,您将找到此初学者/模板项目结构附带的默认.gitignore。

    如果使用Ionic CLI创建项目:

    离子启动空白
    
    (这可能在Q发布时不存在…)

    它将包含一些
    .gitignore
    文件;但是,如果您想查找要排除的其他文件,可以查看GitIgnore.IO并搜索“Ionic”。您可能还需要查看操作系统、IDE/编辑器和其他工具(如“VisualStudioCode”等)的文件,以查找要添加的其他文件

    正如Non的回答中提到的,如果在提交(根据您的问题)后添加
    .gitignore
    ,您将得到一些奇怪的行为,因为已经在repo中的文件将继续被跟踪。您可以使用以下命令:

    git更新索引--跳过工作树
    

    如前所述,阻止git尝试跟踪它们。这不应该有任何缺点,除非您最终希望再次跟踪这些文件,否则您将需要使用
    git update index--no skip worktree
    ,以使它们再次可跟踪。

    您可以始终使用爱奥尼亚团队的参考应用程序,并查看它们如何配置。gitignore用于项目:

    文件如下:


    非常感谢你的帮助,事实上这两个答案对我帮助很大!非常感谢你的帮助,事实上这两个答案对我帮助很大@sioesi瞧,这在git帮助页面上:
    如果你已经签入了一个文件,并且你想忽略它,那么如果你以后添加一个规则,git将不会忽略该文件。
    正是我告诉你的。不需要创建新项目。要忽略以前提交的文件,请使用git
    rm--cached
    。见@DougAmos我提供的答案是正确的,你的答案也是正确的。您不必滥用Downvote功能。只有当答案没有任何意义或类似的东西时,才应该使用Downvote,在这种情况下就不应该使用Downvote。@尼采程序员您的答案基本上是正确的,但不建议使用Downvote,因为任何git历史记录都将丢失。如果没有做太多的工作,这将是很好的,但如果你做了,这并不理想。另外,一个.gitignore文件显然不必在项目开始时创建(我试图删除我的否决票,因为你是对的,答案将完成任务,但Stackoverflow不让我这样做)
    # Specifies intentionally untracked files to ignore when using Git
    # http://git-scm.com/docs/gitignore
    www/
    
    *~
    *.sw[mnpcod]
    *.log
    *.tmp
    *.tmp.*
    log.txt
    *.sublime-project
    *.sublime-workspace
    .vscode/
    npm-debug.log*
    .firebase/
    .idea/
    .sourcemaps/
    .sass-cache/
    .tmp/
    .versions/
    coverage/
    dist/
    node_modules/
    tmp/
    temp/
    hooks/
    platforms/
    plugins/
    plugins/android.json
    plugins/ios.json
    $RECYCLE.BIN/
    
    .DS_Store
    Thumbs.db
    UserInterfaceState.xcuserstate