Search code examples
windows-8version-controlopen-sourcewindows-store-appswindows-store

What Windows app source artifacts should be excluded from public source control?


I'm building a Windows 8/8.1 app and would like to upload it to GitHub to share out and accept community contributions. Which project artifacts are linked to my developer account and should be excluded from posting publicly?

Some files I see in the project:

*.cs
*.xaml
*.xaml.cs
*.csproj
*_StoreKey.pfx
*_TemporaryKey.pfx
Package.appxmanifest
Package.StoreAssociation.xml

Solution

  • Generally you can exclude *.pfx files, because they are certificates. Package.StoreAssociation is also useless, without certificates.

    Additionally, there are .gitignore file created by Visual Studio 2013, it can be useful to exclude all non related to the sources stuff:

    ## Ignore Visual Studio temporary files, build results, and
    ## files generated by popular Visual Studio add-ons.
    
    # User-specific files
    *.suo
    *.user
    *.sln.docstates
    
    # Build results
    
    [Dd]ebug/
    [Rr]elease/
    x64/
    build/
    [Bb]in/
    [Oo]bj/
    
    # Enable "build/" folder in the NuGet Packages folder since NuGet packages use it for MSBuild targets
    !packages/*/build/
    
    # MSTest test Results
    [Tt]est[Rr]esult*/
    [Bb]uild[Ll]og.*
    
    *_i.c
    *_p.c
    *.ilk
    *.meta
    *.obj
    *.pch
    *.pdb
    *.pgc
    *.pgd
    *.rsp
    *.sbr
    *.tlb
    *.tli
    *.tlh
    *.tmp
    *.tmp_proj
    *.log
    *.vspscc
    *.vssscc
    .builds
    *.pidb
    *.log
    *.scc
    
    # Visual C++ cache files
    ipch/
    *.aps
    *.ncb
    *.opensdf
    *.sdf
    *.cachefile
    
    # Visual Studio profiler
    *.psess
    *.vsp
    *.vspx
    
    # Guidance Automation Toolkit
    *.gpState
    
    # ReSharper is a .NET coding add-in
    _ReSharper*/
    *.[Rr]e[Ss]harper
    
    # TeamCity is a build add-in
    _TeamCity*
    
    # DotCover is a Code Coverage Tool
    *.dotCover
    
    # NCrunch
    *.ncrunch*
    .*crunch*.local.xml
    
    # 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
    *.Publish.xml
    
    # NuGet Packages Directory
    ## TODO: If you have NuGet Package Restore enabled, uncomment the next line
    #packages/
    
    # Windows Azure Build Output
    csx
    *.build.csdef
    
    # Windows Store app package directory
    AppPackages/
    
    # Others
    sql/
    *.Cache
    ClientBin/
    [Ss]tyle[Cc]op.*
    ~$*
    *~
    *.dbmdl
    *.[Pp]ublish.xml
    *.pfx
    *.publishsettings
    
    # 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
    
    # SQL Server files
    App_Data/*.mdf
    App_Data/*.ldf
    
    
    #LightSwitch generated files
    GeneratedArtifacts/
    _Pvt_Extensions/
    ModelManifest.xml
    
    # =========================
    # Windows detritus
    # =========================
    
    # Windows image file caches
    Thumbs.db
    ehthumbs.db
    
    # Folder config file
    Desktop.ini
    
    # Recycle Bin used on file shares
    $RECYCLE.BIN/
    
    # Mac desktop service store files
    .DS_Store