• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    详解Visual Studio使用Git忽略不想上传到远程仓库的文件

    前言:

    作为一个.NET开发者而已,有着宇宙最强IDE:Visual Studio加持,让我们的开发效率得到了更好的提升。我们不需要担心环境变量的配置和其他代码管理工具,因为VS有丰富的拓展工具。废话不多说,直接进入正题。我们日常在使用VS开发相关的.NET项目时,经常会发现刚拉取下拉的代码什么都没有改动,就是运行了一下就会产生一些需要提交的文件,比如说最常见的bin/Debug, bin/Release,obj/Debug,obj/Release文件。但是我不想把这些文件提交到远程的git代码远程仓库中去,其实这个很简单只需要我们在初次创建项目的时候在项目目录下新增一个忽略文本文件(.gitignore),然后在使用git推送到远程仓库中就好了。

    需要忽略提交的文件:

    配置.gitignore忽略文件,忽略不需要提交的文件:

    添加Visual Studio的.gitgnore模板到项目中:

    以下是一个.NET/.NET Core相关项目的忽略文件模板只要是使用VisualStudio开发的项目都可以使用:

    gitnore忽略文件模板来源:https://github.com/github/gitignore/blob/master/VisualStudio.gitignore,该项目中有众多的编程语言或IDE相关.gitgnore配置,可以下载下来直接使用。

    ## Ignore Visual Studio temporary files, build results, and
    ## files generated by popular Visual Studio add-ons.
    ##
    ## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
    
    # User-specific files
    *.rsuser
    *.suo
    *.user
    *.userosscache
    *.sln.docstates
    
    # User-specific files (MonoDevelop/Xamarin Studio)
    *.userprefs
    
    # Mono auto generated files
    mono_crash.*
    
    # Build results
    [Dd]ebug/
    [Dd]ebugPublic/
    [Rr]elease/
    [Rr]eleases/
    x64/
    x86/
    [Ww][Ii][Nn]32/
    [Aa][Rr][Mm]/
    [Aa][Rr][Mm]64/
    bld/
    [Bb]in/
    [Oo]bj/
    [Ll]og/
    [Ll]ogs/
    
    # Visual Studio 2015/2017 cache/options directory
    .vs/
    # Uncomment if you have tasks that create the project's static files in wwwroot
    #wwwroot/
    
    # Visual Studio 2017 auto generated files
    Generated\ Files/
    
    # MSTest test Results
    [Tt]est[Rr]esult*/
    [Bb]uild[Ll]og.*
    
    # NUnit
    *.VisualState.xml
    TestResult.xml
    nunit-*.xml
    
    # Build Results of an ATL Project
    [Dd]ebugPS/
    [Rr]eleasePS/
    dlldata.c
    
    # Benchmark Results
    BenchmarkDotNet.Artifacts/
    
    # .NET Core
    project.lock.json
    project.fragment.lock.json
    artifacts/
    
    # ASP.NET Scaffolding
    ScaffoldingReadMe.txt
    
    # StyleCop
    StyleCopReport.xml
    
    # Files built by Visual Studio
    *_i.c
    *_p.c
    *_h.h
    *.ilk
    *.meta
    *.obj
    *.iobj
    *.pch
    *.pdb
    *.ipdb
    *.pgc
    *.pgd
    *.rsp
    *.sbr
    *.tlb
    *.tli
    *.tlh
    *.tmp
    *.tmp_proj
    *_wpftmp.csproj
    *.log
    *.vspscc
    *.vssscc
    .builds
    *.pidb
    *.svclog
    *.scc
    
    # Chutzpah Test files
    _Chutzpah*
    
    # Visual C++ cache files
    ipch/
    *.aps
    *.ncb
    *.opendb
    *.opensdf
    *.sdf
    *.cachefile
    *.VC.db
    *.VC.VC.opendb
    
    # Visual Studio profiler
    *.psess
    *.vsp
    *.vspx
    *.sap
    
    # Visual Studio Trace Files
    *.e2e
    
    # TFS 2012 Local Workspace
    $tf/
    
    # Guidance Automation Toolkit
    *.gpState
    
    # ReSharper is a .NET coding add-in
    _ReSharper*/
    *.[Rr]e[Ss]harper
    *.DotSettings.user
    
    # TeamCity is a build add-in
    _TeamCity*
    
    # DotCover is a Code Coverage Tool
    *.dotCover
    
    # AxoCover is a Code Coverage Tool
    .axoCover/*
    !.axoCover/settings.json
    
    # Coverlet is a free, cross platform Code Coverage Tool
    coverage*.json
    coverage*.xml
    coverage*.info
    
    # Visual Studio code coverage results
    *.coverage
    *.coveragexml
    
    # NCrunch
    _NCrunch_*
    .*crunch*.local.xml
    nCrunchTemp_*
    
    # MightyMoose
    *.mm.*
    AutoTest.Net/
    
    # Web workbench (sass)
    .sass-cache/
    
    # Installshield output folder
    [Ee]xpress/
    
    # DocProject is a documentation generator add-in
    DocProject/buildhelp/
    DocProject/Help/*.HxT
    DocProject/Help/*.HxC
    DocProject/Help/*.hhc
    DocProject/Help/*.hhk
    DocProject/Help/*.hhp
    DocProject/Help/Html2
    DocProject/Help/html
    
    # Click-Once directory
    publish/
    
    # Publish Web Output
    *.[Pp]ublish.xml
    *.azurePubxml
    # Note: Comment the next line if you want to checkin your web deploy settings,
    # but database connection strings (with potential passwords) will be unencrypted
    *.pubxml
    *.publishproj
    
    # Microsoft Azure Web App publish settings. Comment the next line if you want to
    # checkin your Azure Web App publish settings, but sensitive information contained
    # in these scripts will be unencrypted
    PublishScripts/
    
    # NuGet Packages
    *.nupkg
    # NuGet Symbol Packages
    *.snupkg
    # The packages folder can be ignored because of Package Restore
    **/[Pp]ackages/*
    # except build/, which is used as an MSBuild target.
    !**/[Pp]ackages/build/
    # Uncomment if necessary however generally it will be regenerated when needed
    #!**/[Pp]ackages/repositories.config
    # NuGet v3's project.json files produces more ignorable files
    *.nuget.props
    *.nuget.targets
    
    # Microsoft Azure Build Output
    csx/
    *.build.csdef
    
    # Microsoft Azure Emulator
    ecf/
    rcf/
    
    # Windows Store app package directories and files
    AppPackages/
    BundleArtifacts/
    Package.StoreAssociation.xml
    _pkginfo.txt
    *.appx
    *.appxbundle
    *.appxupload
    
    # Visual Studio cache files
    # files ending in .cache can be ignored
    *.[Cc]ache
    # but keep track of directories ending in .cache
    !?*.[Cc]ache/
    
    # Others
    ClientBin/
    ~$*
    *~
    *.dbmdl
    *.dbproj.schemaview
    *.jfm
    *.pfx
    *.publishsettings
    orleans.codegen.cs
    
    # Including strong name files can present a security risk
    # (https://github.com/github/gitignore/pull/2483#issue-259490424)
    #*.snk
    
    # Since there are multiple workflows, uncomment next line to ignore bower_components
    # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
    #bower_components/
    
    # RIA/Silverlight projects
    Generated_Code/
    
    # Backup  report files from converting an old project file
    # to a newer Visual Studio version. Backup files are not needed,
    # because we have git ;-)
    _UpgradeReport_Files/
    Backup*/
    UpgradeLog*.XML
    UpgradeLog*.htm
    ServiceFabricBackup/
    *.rptproj.bak
    
    # SQL Server files
    *.mdf
    *.ldf
    *.ndf
    
    # Business Intelligence projects
    *.rdl.data
    *.bim.layout
    *.bim_*.settings
    *.rptproj.rsuser
    *- [Bb]ackup.rdl
    *- [Bb]ackup ([0-9]).rdl
    *- [Bb]ackup ([0-9][0-9]).rdl
    
    # Microsoft Fakes
    FakesAssemblies/
    
    # GhostDoc plugin setting file
    *.GhostDoc.xml
    
    # Node.js Tools for Visual Studio
    .ntvs_analysis.dat
    node_modules/
    
    # Visual Studio 6 build log
    *.plg
    
    # Visual Studio 6 workspace options file
    *.opt
    
    # Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
    *.vbw
    
    # Visual Studio LightSwitch build output
    **/*.HTMLClient/GeneratedArtifacts
    **/*.DesktopClient/GeneratedArtifacts
    **/*.DesktopClient/ModelManifest.xml
    **/*.Server/GeneratedArtifacts
    **/*.Server/ModelManifest.xml
    _Pvt_Extensions
    
    # Paket dependency manager
    .paket/paket.exe
    paket-files/
    
    # FAKE - F# Make
    .fake/
    
    # CodeRush personal settings
    .cr/personal
    
    # Python Tools for Visual Studio (PTVS)
    __pycache__/
    *.pyc
    
    # Cake - Uncomment if you are using it
    # tools/**
    # !tools/packages.config
    
    # Tabs Studio
    *.tss
    
    # Telerik's JustMock configuration file
    *.jmconfig
    
    # BizTalk build output
    *.btp.cs
    *.btm.cs
    *.odx.cs
    *.xsd.cs
    
    # OpenCover UI analysis results
    OpenCover/
    
    # Azure Stream Analytics local run output
    ASALocalRun/
    
    # MSBuild Binary and Structured Log
    *.binlog
    
    # NVidia Nsight GPU debugger configuration file
    *.nvuser
    
    # MFractors (Xamarin productivity tool) working folder
    .mfractor/
    
    # Local History for Visual Studio
    .localhistory/
    
    # BeatPulse healthcheck temp database
    healthchecksdb
    
    # Backup folder for Package Reference Convert tool in Visual Studio 2017
    MigrationBackup/
    
    # Ionide (cross platform F# VS Code tools) working folder
    .ionide/
    
    # Fody - auto-generated XML schema
    FodyWeavers.xsd

    gitignore忽略规则:

    语法:

    此外,git 对于 .ignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效;

    # 此为注释 – 将被 Git 忽略
     
    *.a  # 忽略所有 .a 结尾的文件
    !lib.a # 但 lib.a 除外
    /TODO  # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
    build/ # 忽略 build/ 目录下的所有文件
    doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

    该忽略规则参考地址:https://blog.csdn.net/sundna/article/details/90749495

    处理已提交到远程仓库中的文件:

      我们可能在开发的时候可能一时没有注意添加忽略文件配置(gitignore),把这些文件推送到远程仓库中,我们有以下两种做法解决:

    1、把本地这些文件删除再提交到远端(前提是这些文件是环境变量文件,假如是无法自动生成的不推荐)。

    2、使用以下git 命令:

    //当我们需要删除暂存区或分支上的文件, 但本地又需要使用, 只是不希望这个文件被版本控制, 可以使用
    git rm -r --cached file_path(文件路径) //把file_path文件在当前分支的暂存区中删除br>git add .        //提交当前操作本地暂存区
    git commit -m 'delete remote somefile' //提交到本地git仓库
    git push        //提交到远程代码库

    如我需要移除某个项目中的obj文件然后提交:

    该文件路径为:D:\开发学习-Master\我的训练营\DailyLearning\工作学习.Net训练营\Application\obj  

    输入以下命令移除相关不需要跟踪的文件:

    git rm -r --cached Application/obj

    执行成功后,文件将从该分支中删除(本地还会存在),最后我们提交到远程仓库即可。

    到此这篇关于详解Visual Studio使用Git忽略不想上传到远程仓库的文件的文章就介绍到这了,更多相关Git忽略不想上传到远程仓库的文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • 在Visual Studio Code中使用CSSComb格式化CSS文件的教程
    • visual studio code 编译运行html css js文件的教程
    • Visual Studio寻找C#程序必要的运行库文件
    • Visual Studio中根据系统区分引用64位、32位DLL动态库文件的配置方法
    • Visual Studio 2010崩溃重启问题(源文件编译崩溃)
    • 使用Visual Studio进行文件差异比较的问题小结
    上一篇:Git 如何放弃所有本地修改的方法
    下一篇:详解idea中Git的Stash Changes和UnStash Changes用法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    详解Visual Studio使用Git忽略不想上传到远程仓库的文件 详解,Visual,Studio,使用,Git,