Clean checkout on Windows has untracked files
DanTup opened this issue · comments
I suspect this is related to filesystem case sensitivity, but if you clone this repo on Windows, it has a ton of untracked files before you've done anything.
I suspect this won't bother you, but it means having a checked out version of this repo and updating it on Windows is impossible. All commands like git reset
and git clean
do weird things, always leaving the repo in a dirty state; impossible to make clean.
Here's the output of a clone
/`status`` on a clean Windows VM:
PS C:\Users\Danny\danny> git clone https://github.com/angular/code.angularjs.org
Cloning into 'code.angularjs.org'...
remote: Reusing existing pack: 14557, done.
remote: Counting objects: 1038, done.
remote: Compressing objects: 100% (1036/1036), done.
remote: Total 15595 (delta 525), reused 0 (delta 0)
Receiving objects: 100% (15595/15595), 190.75 MiB | 9.94 MiB/s, done.
Resolving deltas: 100% (11404/11404), done.
Checking connectivity... done.
Checking out files: 100% (38903/38903), done.
PS C:\Users\Danny\danny> cd .\code.angularjs.org
PS C:\Users\Danny\danny\code.angularjs.org> git status
On branch master
Your branch is up-to-date with 'origin/master'.
Untracked files:
(use "git add <file>..." to include in what will be committed)
0.10.0/docs-0.10.0/api/angular.directive.ng
0.10.0/docs-0.10.0/api/angular.widget.@ng
0.10.0/docs-0.10.0/api/angular.widget.ng
0.10.1/docs-0.10.1/api/angular.directive.ng
0.10.1/docs-0.10.1/api/angular.widget.@ng
0.10.1/docs-0.10.1/api/angular.widget.ng
0.10.2/docs-0.10.2/partials/api/angular.directive.ng
0.10.2/docs-0.10.2/partials/api/angular.widget.@ng
0.10.2/docs-0.10.2/partials/api/angular.widget.ng
0.10.3/docs-0.10.3/partials/api/angular.directive.ng
0.10.3/docs-0.10.3/partials/api/angular.widget.@ng
0.10.3/docs-0.10.3/partials/api/angular.widget.ng
// (trim, hundreds of files...)
1.2.9/docs/ptore2e/api/ng.directive
nothing added to commit but untracked files present (use "git add" to track)
PS C:\Users\Danny\danny\code.angularjs.org> git status
Hi @DanTup - thanks for posting this issue - very comprehensive and clear it is too.
This is an issue we are aware of. The problem is that legacy builds contain files that have characters that are not valid on Windows (mostly containing colons).
We have to leave these files in place otherwise the old versions of Angular docs would not work properly.
Since there is no need for anyone outside of the core team to make changes to this repository (infact it is updated automatically by a script when we do a release) this is not really a problem for us.
If you want to checkout this repo on Windows you could always add lines to the .gitignore, locally for the old docs...