Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ignore to umbraco folder #3307

Merged
merged 5 commits into from
Feb 21, 2020
Merged

Add ignore to umbraco folder #3307

merged 5 commits into from
Feb 21, 2020

Conversation

testcs12345
Copy link
Contributor

@testcs12345 testcs12345 commented Feb 13, 2020

umbraco folder should be git ignore.

Reasons for making this change:
The content indside this folder should be added by Install-Package UmbracoCms or updated by Update-Package UmbracoCms instead of the developers who is using the CMS.

Links to documentation supporting these rule changes:
https://our.umbraco.com/documentation/getting-started/setup/upgrading/general

Add ignore to umbraco folder as it will be added by Install-Package UmbracoCms or updated by Update-Package UmbracoCms
@shiftkey
Copy link
Member

Tentative 👍 here but I'd like a confirmation from others who may be familiar with this.

cc @Mivaweb @mbukejlovic @richarth who have contributed previously to this template

@Mivaweb
Copy link
Contributor

Mivaweb commented Feb 14, 2020

Normally its ok to exclude this Umbraco folder. But in Umbraco v7+ you also have the Umbraco_client folder what about that one? In v8 its only the Umbraco folder, the Umbraco_client has been removed. Some people exclude it, others not. Maybe we could create a poll on twitter for this.

@Mivaweb
Copy link
Contributor

Mivaweb commented Feb 14, 2020

I have created a poll on twitter for 1 day, will reply with the results and answers about this thread.

@richarth
Copy link
Contributor

It's true that the folder can be created by installing the NuGet package and updated with the update package command.

I'm not sure if you open a solution without the Umbraco folder whether the folder would get recreated automatically? If it isn't recreated automatically then a team mate would have to run a NuGet command when first working on a project. If you have to run the commands manually, this could potentially lead to a different version of Umbraco being installed which is probably not what you want.

In the agency I work for we deploy everything straight from Git, so we have to have this folder checked in.

In short I think this one depends on the way you work. I'll let others have their say and we can go with the consensus.

@Mivaweb
Copy link
Contributor

Mivaweb commented Feb 14, 2020

The poll on twitter is also concluding that not everyone is ignoring the folder. So I would leave the ignore file like it is and let the users decide to ignore it or not.

@shiftkey
Copy link
Member

@bakkiung thoughts on the feedback raised above? ☝️

Update Umbraco.gitignore comment
@testcs12345
Copy link
Contributor Author

testcs12345 commented Feb 16, 2020

Hi, @shiftkey, @Mivaweb and @richarth , thanks for the discussion. Here are my thoughts:

  1. The files insides the **/[Uu]mbraco/ should be modified by Umbraco team thus we should not include in our repo as it will introduce more than 1k files to our repo which should not be modified by us. Including it is like including node_modules/ in your repo in which you should not. You should get your dependencies from npm install so do you should get your Umbraco from Install-Package UmbracoCms. Maybe there are some special cases you want to break the best practices and do want to include it in your repo. However, I think this git ignore is to help developers to deal with common cases. You can free feel to follow it or not if it does not suit your special cases.

  2. I admit that if we do not include it in the repo, then when other developers check out the repo, they do need to run NuGet command to get that. But I do not think "this could potentially lead to a different version of Umbraco being installed which is probably not what you want." Since you can do Install-Package UmbracoCms -Version 8.5.3 in which you can find your Umbraco version easily in your Web.config. Besides, I noticed that downloading from NuGet is faster than checking them out from the repo in terms of 1k+ files. Last but not least, I find it is better to exclude it if you are using CICD for Umbraco development.

  3. I also agree that "let the users decide to ignore it or not." However, I think it will be better if we can add something like this below to be more informative to let the users decide to ignore it or not :

## this folder should be added via Install-Package UmbracoCms or you can remove this line if you think it fits the way you work on your project.
**/[Uu]mbraco/ 

Otherwise, it may be a missing piece of information for developers who are new to this and want to look up some useful info regarding git ignore in Umbraco.

Thanks,

Adrian

@richarth
Copy link
Contributor

I agree, if your systems/processes allow you to not check in the umbraco folder then it's best not to.

I like adding the comment. I think it might be worth adding the version parameter to it though and adding instructions on how to find the version number. This would help those new to Umbraco to not end up on the wrong version.

Add comment to Umbraco.gitignore regarding the umbraco folder
@testcs12345
Copy link
Contributor Author

@richarth , thanks for the advice and I've updated my pull request as you suggested.

@shiftkey
Copy link
Member

The only extra bit of advice I have around this is whether it should be ignored by default, or commented out. If there are downsides to having this enabled by default, i.e. the user should "opt-in" to this setting rather than have it applied for everyone, I recommend commenting it out.

change git ignore line to optional comment
@testcs12345
Copy link
Contributor Author

Hi, @shiftkey , the pull request is updated as you recommended.

thanks,
Adrian

@shiftkey
Copy link
Member

@bakkiung thanks!

@shiftkey shiftkey merged commit 65047ae into github:master Feb 21, 2020
tokuhira pushed a commit to tokuhira/gitignore that referenced this pull request Feb 25, 2020
Add ignore to umbraco folder as it will be added by Install-Package UmbracoCms or updated by Update-Package UmbracoCms
r2pgl pushed a commit to r2pgl/gitignore that referenced this pull request Mar 15, 2020
Add ignore to umbraco folder as it will be added by Install-Package UmbracoCms or updated by Update-Package UmbracoCms
ANRCorleone pushed a commit to ANRCorleone/gitignore that referenced this pull request Jul 24, 2020
* Update Node.gitignore (github#3264)

* Added gitignore for GNOME Extension (github#3268)

* [Unity] Fix ignore Jetbrains plugin folder (github#3266)

Add missing slash to make pattern accurate, since the JetBrains folder is always relative to root assets folder.

* added Coverlet result files as a Code Coverage Tool (github#3252)

* Ignore files inside `.vscode-test` (github#3256)

* Ignore files inside `.vscode-test` 

[vscode-test](https://github.com/microsoft/vscode-test) is a testing framework for vscode extensions. Inside the `vscode-test` folder are stored one or more versions of vscode, which are used for testing a vscode extension.

* Update Node.gitignore

* Added a comment why MemoryCaptures get excluded (github#3276)

* Update Autotools.gitignore (github#3271)

* TeX: Ignore REVTeX generated Notes.bib files (github#3286)

* [Godot] Ignore imported translations (github#3269)

The Godot editor automatically creates those binary files from
translations in CSV format. There's no need to add them to
version control.

* Update PureScript adding .spago (github#3278)

* [Global/Eclipse] Make .project opt-in (github#3305)

The project description file.

* Ignore .pytype/ directory (github#3301)

pytype is a static type analyzer for Python code;
it generates files of inferred type information,
located by default in .pytype/pyi.

* Update Unity.gitignore (github#3297)

Unity 2020 introduces a new "UserSettings" top-level project folder.
See https://forum.unity.com/threads/whats-the-usersettings-directory.754436/ for more information.

* Update concrete5 gitignore (github#3176)

* [Python] .python-version should NOT be ignored (github#3274)

* Add Umbraco V8 packages folder location (github#3302)

In Umbraco v8 we have a new packages folder located under Umbraco/views/packages/...

This gets ignored by the current version. Adding this new line prevents this and includes all files and subfolders under this new location.

* add alternative sftp settings file (github#3006)

* add alternative sftp settings file

* update for possible multiple alt* numbered files

* add in global metals (github#3296)

* Add snowpack dependency directory (github#3315)

* Add `cover/` to Python.gitignore. (github#3310)

* Changes the name of Perl 6 to Raku (github#3312)

Since October 2019, Raku is the name of the language formerly known as
Perl 6. This reflects the change. It's the same language, so changes
are mostly cosmetic.

* Add ignore to umbraco folder (github#3307)

Add ignore to umbraco folder as it will be added by Install-Package UmbracoCms or updated by Update-Package UmbracoCms

* Remote typings ignore from node gitignore (github#3319)

Similar to github#2608, it's the defacto tsc way now for adding typings locally.

* Changed TeX to not ignore tikz files by default. (github#3320)

* Include Rider as a supported IDE (github#3323)

AS far as I can tell this .gitignore also applies to Rider. Looking at the somewhat official .gitignore for Rider [here](https://github.com/JetBrains/resharper-rider-samples/blob/master/.gitignore), it seems compatible.

* Add period. (github#3336)

* Update for Prestashop 1.7 (github#3261)

* Jigsaw (github#3334)

* update parcel cache (github#3331)

* Update Drupal.gitignore (github#3329)

* Add /public/uploads for file upload gem Shrine (github#3333)

When using a file upload gem called Shrine, its file system mode put images under `public/uploads`.

https://github.com/shrinerb/shrine/blob/053bcf297e092e9695731fb9b67a86780e898203/doc/storage/file_system.md

* Ignore Cython debug symbols (github#3330)

Cython extension modules built with `gdb_debug=True` spit out debug symbols in the `cython_debug` directory at the top level of the project. The files in this directory contain hardcoded paths and are not shareable/meaningful across environments, so I think it makes sense to include them in a default Python .gitignore.

* Improved JENKINS_HOME example (github#3332)

After years of use I've come up with some improvements to the
`JENKINS_HOME.gitignore` example.

- Major performance improvement: On very large Jenkins installations that
  have been running for more than one year, there tends to be many builds
  (hundreds of thousands of builds).  The `builds` directory of these
  jobs contain millions of files which would cause Git to hang for
  several minutes on simple commands like `git status` and longer for
  committing changes.  `strace` was used on Git to figure out the
  performance impact and this proposed change includes the optimization.
  I also added a clear comment explaining the line's purpose.
- There's an example for how to include Jenkins encryption keys, and
  there's a disclaimer informing the user why they shouldn't but still
  giving an example.
- Comments have been reworded and slightly reformatted to be a little
  more clear.

* Add Unity's Addressables and Android's temp files. (github#3311)

* Added Addressables.

Prevent automatically generated addressable files to end up in Git.

* Update .gitignore to exclude packed Addressables and Android auto-generated files.

* [Node] Add yarn v2 excludes (github#3327)

* [VisualStudio] Add rule for ScaffoldingReadMe.txt (github#3328)

* Update Autotools.gitignore. (github#3337)

Ignore .dirstamp files from automake used for non-existing directory dependencies.

* Add Win32/ to gitginore list (github#3308)

Visual Studio .Net used Win32/ as one of the default output directories for C and C++ projects. Later, when 64-bit support was added to the toolchain (circa 2005), x64/ was used. The Gitignore files include x64/, but not Win32/. The commit adds support for both Win32/ and x64/.

* update README (github#3248)

* Extend Qt.gitignore with qmlcache qrc files (github#3322)

Projects using QML files generating a temporary qrc file if a qrc file present in the project.

* Changes to PyBuilder 0.12+ (github#3338)

PyB 0.12 uses `$project_root/.pybuilder/` for internal venvs.

* [Python] adding IDE & static related stuff (github#3317)

* Update R.gitignore (github#3354)

* Ignore Local History folder (github#3008)

This will add support for the default location the Local History extension for Visual Studio Code uses.
See https://marketplace.visualstudio.com/items?itemName=xyz.local-history

* Revert "[Python] adding IDE & static related stuff (github#3317)" (github#3363)

This reverts commit e931ef7.

* Ignore Terraform CLI configuration files (github#3359)

* Ignore AWS Serverless Application Model build folder (github#3357)

https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-cli-command-reference-sam-build.html

* Add generated timing files to Coq.gitignore (github#3367)

These generated files were added in coq/coq#745

* Remove pip-wheel-metadata/ from Python.gitignore (github#3364)

pip generated this folder for a few versions, as part of it's initial
implementation of PEP 517.

pip has not generated this folder for a few versions now, so it should
be OK to remove this from the standard gitignore file.

* Ignore Gradle subproject build dir (github#3370)

* Add FodyWeavers.xsd to VisualStudio.gitignore (github#3380)

* Ignore Next.js `next export` result directory (github#3387)

* Dart: Ignore .flutter-plugins (github#3398)

Generated files that appear when using 'google_fonts' or other Dart
packages designed as Flutter plugins.

* Add .yarn/install-state.gz to Node.gitignore (github#3407)

After running `yarn set version berry` and `yarn install`, the file `.yarn/install-state.gz` is created.

The documentation at https://yarnpkg.com/advanced/qa#which-files-should-be-gitignored mentions that this file should be ignored:

> .yarn/install-state.tgz is an optimization file that you shouldn't have to ever commit. It simply stores the exact state of your project so that the next commands can boot without having to resolve your workspaces again.

The documentation has a minor error; the generated file is `.gz` instead of `.tgz` (source: https://github.com/yarnpkg/berry/pull/998/files#diff-23dd4c2e823c25186f1107e88e962032R201)

* ignore .xwm generated by xwatermark package in TeX (github#3412)

* Add *.aab (github#3414)

* Fixing target and adding debug to Rust gitignore (github#3436)

The problem here was two fold:
1. the folder "/target/" would be top-level of the repo only, it should be "target/" to properly exclude target folders anywhere in the repo
2. the default Rust/Cargo folder when compiling code is "debug/", which gets used perhaps more often that "target/", added that

* Fix false positives on Coverage*.cs files (github#3454)

I added this .gitignore to a project that included a file named CoverageSearchModel.cs, and the file was wrongly ignored.  This change fixes the incorrect use of the range operator on the Coverlet rules.

* Update stale heading anchor (github#3445)

Co-authored-by: ZhengYuan Loo <[email protected]>

* ignore *~ files in the po directory (github#3453)

Common IME for `gettext` utilities like `tools::update_pkg_po('.')` to create these temp files (at least on Mac)

* ignore HPROF files (github#3456)

* Exclude *.tfvars files (github#3452)

Co-authored-by: Kevin Cochran <[email protected]>

* Remove pointless blank line from the beginning of the Godot file (github#3466)

* KiCad: add *.kicad_sch-bak and *.kicad_prl (github#3427)

* KiCad: add *.kicad_sch-bak

As used by the new file formats for KiCad 6.0
See https://kicad-pcb.org/blog/2020/05/Development-Highlight-New-schematic-and-symbol-library-file-formats-are-now-the-default/

* Add *.kicad_prl to KiCad.gitignore

More info: https://forum.kicad.info/t/new-project-file-format/23705

Co-authored-by: anishagg17 <[email protected]>
Co-authored-by: Pellegrino Prevete <[email protected]>
Co-authored-by: 狂飙 <[email protected]>
Co-authored-by: Łukasz Kurzyniec <[email protected]>
Co-authored-by: Simon Siefke <[email protected]>
Co-authored-by: FritzsHero <[email protected]>
Co-authored-by: Leonardo Romor <[email protected]>
Co-authored-by: Henri Menke <[email protected]>
Co-authored-by: Hugo Locurcio <[email protected]>
Co-authored-by: Hideaki KAWAI <[email protected]>
Co-authored-by: Douglas Larson <[email protected]>
Co-authored-by: Brad Solomon <[email protected]>
Co-authored-by: Daniel Heim <[email protected]>
Co-authored-by: shahroq <[email protected]>
Co-authored-by: Santiago Basulto <[email protected]>
Co-authored-by: Michaël Vanbrabandt <[email protected]>
Co-authored-by: Gruber <[email protected]>
Co-authored-by: Chris Kipp <[email protected]>
Co-authored-by: Igor Strebezhev <[email protected]>
Co-authored-by: Xuan (Sean) Hu <[email protected]>
Co-authored-by: Juan Julián Merelo Guervós <[email protected]>
Co-authored-by: bakkiung <[email protected]>
Co-authored-by: Jeffrey Priebe <[email protected]>
Co-authored-by: Bart Verhagen <[email protected]>
Co-authored-by: bitbonk <[email protected]>
Co-authored-by: mr <[email protected]>
Co-authored-by: Marouane Hassine <[email protected]>
Co-authored-by: Rohan Sakhale <[email protected]>
Co-authored-by: A. Said Aslan <[email protected]>
Co-authored-by: MetaJuanito Fatas <[email protected]>
Co-authored-by: Elijah Shaw-Rutschman <[email protected]>
Co-authored-by: Sam Gleske <[email protected]>
Co-authored-by: JasperCiti <[email protected]>
Co-authored-by: ChiefORZ <[email protected]>
Co-authored-by: Patrick Roche <[email protected]>
Co-authored-by: Christoph Niethammer <[email protected]>
Co-authored-by: Jeffrey Walton <[email protected]>
Co-authored-by: jymok12 <[email protected]>
Co-authored-by: Miklós Márton <[email protected]>
Co-authored-by: Arcadiy Ivanov <[email protected]>
Co-authored-by: Meysam <[email protected]>
Co-authored-by: Patrick Schratz <[email protected]>
Co-authored-by: ofthelit <[email protected]>
Co-authored-by: Brendan Forster <[email protected]>
Co-authored-by: Loo Zheng Yuan <[email protected]>
Co-authored-by: Igor Stepanov <[email protected]>
Co-authored-by: Jason Gross <[email protected]>
Co-authored-by: Pradyun Gedam <[email protected]>
Co-authored-by: Mitchell Skaggs <[email protected]>
Co-authored-by: Daniel Chalmers <[email protected]>
Co-authored-by: Ted Kesgar <[email protected]>
Co-authored-by: Sascha Peilicke <[email protected]>
Co-authored-by: Jon Layton <[email protected]>
Co-authored-by: Benjamin Buch <[email protected]>
Co-authored-by: Hiroto Kobayashi <[email protected]>
Co-authored-by: John Stilley <[email protected]>
Co-authored-by: Justin Gregory <[email protected]>
Co-authored-by: ZhengYuan Loo <[email protected]>
Co-authored-by: Michael Chirico <[email protected]>
Co-authored-by: Maher Zaidoune <[email protected]>
Co-authored-by: Kevin Cochran <[email protected]>
Co-authored-by: Kevin Cochran <[email protected]>
Co-authored-by: Michael Alexsander <[email protected]>
Co-authored-by: Diego Herranz <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants