What's happened to my directory on GitHub?
I added a new subdir within my git respository:
git add feeds
Then commited this and pushed it up to GitHub but it seems as though I've commited a symlink / shortcut but not the actual directory and files within.
See here: http://github.com/G4EGK/RSS-Reader
Any idea what 'feeds' is?
I'd like to remove that and correctly add my files. I tried the following but git status
said nothing had changed:
git rm feeds
git add feeds/\*.php
To remove feeds do I run the following?
git filter-branch --tree-filter 'rm -f feeds' HEAD
Update
Thanks Wes.
$ ls -l
total 16
-rw-r--r--@ 1 greg staff 890 2 Apr 19:11 README.md
drwxr-xr-x 10 greg staff 340 3 Apr 09:30 feeds
-rw-r--r--@ 1 greg staff 372 2 Apr 19:24 rssreader.php
drwxr-xr-x 3 greg staff 102 2 Apr 15:23 tests
drwxr-xr-x 7 greg staff 238 2 Apr 15:44 transfer
$ git submodule feeds
No submodule mapping found in .gitmodules for path 'feeds'
git filter-branch
didn't remove this submodule 开发者_开发百科from my repo (it was still tracked when I viewed git status
)
To remove this mistake I reverted the last two commits (where I tried to add feed classes).
$ git log
commit 276b2392....
Author: Greg K <...@gmail.com>
Date: Sat Apr 3 23:40:14 2010 +0100
Add feed classes
commit d9814942....
Author: Greg K <...@gmail.com>
Date: Sat Apr 3 23:37:52 2010 +0100
Add feed classes
commit 2b7fb93a....
Author: Greg K <...@gmail.com>
Date: Fri Apr 2 19:47:09 2010 +0100
Use auto-detect line length for fgets()
Used the command:
git rebase -i HEAD~3
Then I deleted commits 2 & 3, leaving the top line (my commit on April 2nd), saved my changes (:wq) and forced a push to GitHub.
git push origin +master
Now my GitHub repo is back to where I was before adding feeds.
My original mistake was forgetting to use a slash at the end when adding feeds initially. I should have used
git add feeds/
Looks like you added feeds
as a submodule. Check out the commit:
http://github.com/G4EGK/RSS-Reader/commit/276b2392acd2abbd1fadb310768796675d287771
Check git submodule status
精彩评论