Submodule-modes: Distinguish between update modes and update targets
[git-submod-enhancements.wiki.git] / Home.textile
index 185ff5151e8ec3182c11af97285a5450639c5396..8882dd002c532210aa295d2701d09b84cbac8257 100644 (file)
@@ -5,16 +5,15 @@ As Dscho put it, submodules are the "neglected ugly duckling" of git. Time to ch
 *Issues currently being worked on*
 
 * [[Recursive submodule checkout]]: teach all work tree manipulating commands to update the submodule work trees according to the commit recorded in the superproject.
-* Teach @git mv@ to not only move the gitlink and the work tree but also update core.worktree and the gitfile
 * Teach @git fetch@ to also fetch commits for submodule not currently in the work tree into .git/modules/<name>
-* Make the @git submodule@ script run in non top-level directories too
 
 *Issues still to be tackled*
 
 * Add functionality to move the .git directory of a submodule into the .git/modules directory of the superproject (either by adding a new @git submodule@ command or by providing a script in contrib/)
 * Add a git-config aware merge driver and make it the default for .gitmodules
-* Attempt a 3-way merge when @git mv@ or @git rm@ want to change a .gitmodules file which has unstaged changes
+* Attempt a 3-way merge when @git mv@, @git rm@ or @git submodule add@ want to change a .gitmodules file which has unstaged changes
 * Add configuration options (global, per repo and per submodule) to set the default of @git push --recurse-submodules@
+* Add a tutorial explaining the different use cases and the configuration settings which suit them.
 * Add an option to @git submodule add@ to move the .git directory of a local repository to be added as submodule into the .git/modules directory of the superproject
 * Teach @grep@ the @--recursive@ option
 * Add means to specify which submodules shall be populated on clone (which I'd like to implement by teaching @git fetch@ to create submodule repos in .git/modules, recursive checkout will then do the rest)
@@ -32,6 +31,7 @@ In the long run, git-submodule.sh should be converted to a rather simple wrapper
 *Submodule related bugs to fix*
 
 * Cherry picking across submodule creation fails even if the cherry pick doesn't touch any file in the submodules path
-* @git submodule add@ doesn't record the URL in .git/config when the submodule path doesn't exist.
+* @git submodule add@ doesn't record the URL in .git/config when the submodule path doesn't exist
+* @git submodule add@ happily stages any unstaged modifications of the .gitmodules file together with the new section while it should error out telling the user to stash them (at least unless it attempts the 3-way merge described in the "Issues still to be tackled" paragraph)
 
 *[[Issues already solved and merged into Junio's Repo|history]]*