Reputation: 17530
I added subtree using:
git subtree add -P WLContainerControllers https://github.com/an0/WLContainerControllers.git master
The resulting commit is:
commit bb77fe3c8244a42454b23285f174798116a5eaf8
Merge: 6686d73 755c342
Author: Ling Wang <[email protected]>
Date: Tue Jun 25 17:20:29 2013 -0500
Add 'WLContainerControllers/' from commit '755c342622fc6470e034f1b27e764329d7b8a01c'
git-subtree-dir: WLContainerControllers
git-subtree-mainline: 6686d73b438fc22514b36cdf76adf7ea9c35b558
git-subtree-split: 755c342622fc6470e034f1b27e764329d7b8a01c
Then after some upstream updates, I did a subtree pull using:
git subtree pull -P WLContainerControllers https://github.com/an0/WLContainerControllers.git master --squash
The output:
From https://github.com/an0/WLContainerControllers
* branch master -> FETCH_HEAD
Removing WLPageViewController/main.m
Removing WLPageViewController/en.lproj/InfoPlist.strings
Removing WLPageViewController/damping.m
Removing WLPageViewController/WLPageViewController.m
Removing WLPageViewController/WLPageViewController.h
Removing WLPageViewController/WLPageViewController-Prefix.pch
Removing WLPageViewController/WLPageViewController-Info.plist
Removing WLPageViewController/PageViewController.xib
Removing WLPageViewController/PageViewController.m
Removing WLPageViewController/PageViewController.h
Removing WLPageViewController/ModelController.m
Removing WLPageViewController/ModelController.h
Removing WLPageViewController/[email protected]
Removing WLPageViewController/Default.png
Removing WLPageViewController/[email protected]
Removing WLPageViewController/DataViewController.xib
Removing WLPageViewController/DataViewController.m
Removing WLPageViewController/DataViewController.h
Removing WLPageViewController/AppDelegate.m
Removing WLPageViewController/AppDelegate.h
Removing WLPageViewController.xcodeproj/project.pbxproj
Removing WLContainerControllers/WLContainerControllers/README.md
Removing WLContainerControllers/WLContainerControllers/LICENSE
Removing WLContainerControllers/WLContainerControllers.xcodeproj/xcuserdata/an0.xcuserdatad/xcschemes/xcschememanagement.plist
Removing WLContainerControllers/WLContainerControllers.xcodeproj/xcuserdata/an0.xcuserdatad/xcschemes/WLContainerControllers.xcscheme
Removing WLContainerControllers/WLContainerControllers.xcodeproj/project.xcworkspace/xcuserdata/an0.xcuserdatad/WorkspaceState.xcuserstate
Removing WLContainerControllers/WLContainerControllers.xcodeproj/project.xcworkspace/contents.xcworkspacedata
Removing WLContainerControllers/WLContainerControllers.xcodeproj/project.pbxproj
Removing WLContainerControllers/WLContainerControllers.xcodeproj/an0.perspectivev3
Removing WLContainerControllers/WLContainerControllers.xcodeproj/an0.pbxuser
Removing WLContainerControllers/WLContainerControllers.xcodeproj/an0.mode1v3
Removing .gittrees
Merge made by the 'recursive' strategy.
.gittrees | 4 -
WLContainerControllers/WLContainerControllers/AppDelegate.h => AppDelegate.h | 0
WLContainerControllers/WLContainerControllers/AppDelegate.m => AppDelegate.m | 0
WLContainerControllers/WLContainerControllers/[email protected] => [email protected] | Bin
WLContainerControllers/WLContainerControllers/WLContainerController.h => WLContainerController.h | 0
WLContainerControllers/WLContainerControllers/WLContainerController.m => WLContainerController.m | 0
.../WLContainerControllers/WLContainerControllers-Info.plist => WLContainerControllers-Info.plist | 0
WLContainerControllers/WLContainerControllers.xcodeproj/an0.mode1v3 | 1403 ---------------------------------
WLContainerControllers/WLContainerControllers.xcodeproj/an0.pbxuser | 542 -------------
WLContainerControllers/WLContainerControllers.xcodeproj/an0.perspectivev3 | 1530 ------------------------------------
WLContainerControllers/WLContainerControllers.xcodeproj/project.pbxproj | 308 --------
WLContainerControllers/WLContainerControllers.xcodeproj/project.xcworkspace/contents.xcworkspacedata | 7 -
.../project.xcworkspace/xcuserdata/an0.xcuserdatad/WorkspaceState.xcuserstate | 2264 ------------------------------------------------------
.../WLContainerControllers.xcodeproj/xcuserdata/an0.xcuserdatad/xcschemes/WLContainerControllers.xcscheme | 76 --
.../WLContainerControllers.xcodeproj/xcuserdata/an0.xcuserdatad/xcschemes/xcschememanagement.plist | 22 -
WLContainerControllers/WLContainerControllers/LICENSE | 27 -
WLContainerControllers/WLContainerControllers/README.md | 4 -
.../WLContainerControllers/WLContainerControllers_Prefix.pch => WLContainerControllers_Prefix.pch | 0
.../WLContainerControllers/WLMultiContentContainerController.h => WLMultiContentContainerController.h | 0
.../WLContainerControllers/WLMultiContentContainerController.m => WLMultiContentContainerController.m | 0
WLPageViewController.xcodeproj/project.pbxproj | 372 ---------
WLPageViewController/AppDelegate.h | 15 -
WLPageViewController/AppDelegate.m | 52 --
WLPageViewController/DataViewController.h | 14 -
WLPageViewController/DataViewController.m | 37 -
WLPageViewController/DataViewController.xib | 236 ------
WLPageViewController/[email protected] | Bin 18594 -> 0 bytes
WLPageViewController/Default.png | Bin 6540 -> 0 bytes
WLPageViewController/[email protected] | Bin 16107 -> 0 bytes
WLPageViewController/ModelController.h | 17 -
WLPageViewController/ModelController.m | 89 ---
WLPageViewController/PageViewController.h | 16 -
WLPageViewController/PageViewController.m | 68 --
WLPageViewController/PageViewController.xib | 133 ----
WLPageViewController/WLPageViewController-Info.plist | 45 --
WLPageViewController/WLPageViewController-Prefix.pch | 29 -
WLPageViewController/WLPageViewController.h | 48 --
WLPageViewController/WLPageViewController.m | 1098 --------------------------
WLPageViewController/damping.m | 53 --
WLPageViewController/en.lproj/InfoPlist.strings | 2 -
WLPageViewController/main.m | 18 -
WLContainerControllers/WLContainerControllers/main.m => main.m | 0
42 files changed, 8529 deletions(-)
delete mode 100644 .gittrees
rename WLContainerControllers/WLContainerControllers/AppDelegate.h => AppDelegate.h (100%)
rename WLContainerControllers/WLContainerControllers/AppDelegate.m => AppDelegate.m (100%)
rename WLContainerControllers/WLContainerControllers/[email protected] => [email protected] (100%)
rename WLContainerControllers/WLContainerControllers/WLContainerController.h => WLContainerController.h (100%)
rename WLContainerControllers/WLContainerControllers/WLContainerController.m => WLContainerController.m (100%)
rename WLContainerControllers/WLContainerControllers/WLContainerControllers-Info.plist => WLContainerControllers-Info.plist (100%)
delete mode 100644 WLContainerControllers/WLContainerControllers.xcodeproj/an0.mode1v3
delete mode 100644 WLContainerControllers/WLContainerControllers.xcodeproj/an0.pbxuser
delete mode 100644 WLContainerControllers/WLContainerControllers.xcodeproj/an0.perspectivev3
delete mode 100755 WLContainerControllers/WLContainerControllers.xcodeproj/project.pbxproj
delete mode 100644 WLContainerControllers/WLContainerControllers.xcodeproj/project.xcworkspace/contents.xcworkspacedata
delete mode 100644 WLContainerControllers/WLContainerControllers.xcodeproj/project.xcworkspace/xcuserdata/an0.xcuserdatad/WorkspaceState.xcuserstate
delete mode 100644 WLContainerControllers/WLContainerControllers.xcodeproj/xcuserdata/an0.xcuserdatad/xcschemes/WLContainerControllers.xcscheme
delete mode 100644 WLContainerControllers/WLContainerControllers.xcodeproj/xcuserdata/an0.xcuserdatad/xcschemes/xcschememanagement.plist
delete mode 100644 WLContainerControllers/WLContainerControllers/LICENSE
delete mode 100644 WLContainerControllers/WLContainerControllers/README.md
rename WLContainerControllers/WLContainerControllers/WLContainerControllers_Prefix.pch => WLContainerControllers_Prefix.pch (100%)
rename WLContainerControllers/WLContainerControllers/WLMultiContentContainerController.h => WLMultiContentContainerController.h (100%)
rename WLContainerControllers/WLContainerControllers/WLMultiContentContainerController.m => WLMultiContentContainerController.m (100%)
delete mode 100644 WLPageViewController.xcodeproj/project.pbxproj
delete mode 100644 WLPageViewController/AppDelegate.h
delete mode 100644 WLPageViewController/AppDelegate.m
delete mode 100644 WLPageViewController/DataViewController.h
delete mode 100644 WLPageViewController/DataViewController.m
delete mode 100644 WLPageViewController/DataViewController.xib
delete mode 100644 WLPageViewController/[email protected]
delete mode 100644 WLPageViewController/Default.png
delete mode 100644 WLPageViewController/[email protected]
delete mode 100644 WLPageViewController/ModelController.h
delete mode 100644 WLPageViewController/ModelController.m
delete mode 100644 WLPageViewController/PageViewController.h
delete mode 100644 WLPageViewController/PageViewController.m
delete mode 100644 WLPageViewController/PageViewController.xib
delete mode 100644 WLPageViewController/WLPageViewController-Info.plist
delete mode 100644 WLPageViewController/WLPageViewController-Prefix.pch
delete mode 100644 WLPageViewController/WLPageViewController.h
delete mode 100644 WLPageViewController/WLPageViewController.m
delete mode 100644 WLPageViewController/damping.m
delete mode 100644 WLPageViewController/en.lproj/InfoPlist.strings
delete mode 100644 WLPageViewController/main.m
rename WLContainerControllers/WLContainerControllers/main.m => main.m (100%)
It messed up the who directory.
The related logs are:
commit 0eaebf9a4842e53a19d0ffbddf1dadee69ef4e11
Merge: 3093049 1efe88d
Author: Ling Wang <[email protected]>
Date: Tue Jun 25 18:02:27 2013 -0500
Merge commit '1efe88dd79cb6fd550fceaaa10d4b22dc44fb9df'
commit 1efe88dd79cb6fd550fceaaa10d4b22dc44fb9df
Author: Ling Wang <[email protected]>
Date: Tue Jun 25 18:02:27 2013 -0500
Squashed 'WLContainerControllers/' changes from 755c342..2f2ca9a
2f2ca9a Update project after moving LICENSE and README.md.
d052945 Move LICENSE and README.md to top folder.
git-subtree-dir: WLContainerControllers
git-subtree-split: 2f2ca9ac87a7eebcac590ffba32577dc93c4963f
I'm using git 1.8.3.1 installed via homebrew on OS X 10.8.4.
What's wrong with my usage of git subtree? How to correctly use it? Thanks.
Upvotes: 1
Views: 240
Reputation: 17530
I believe it is due to some bugs of git-subtree. More specifically, after reviewing the complete logs after git subtree add
, I found my commit history is messed up — there is no trace of commit logs of the super tree(the top directory). So I cleaned it up manually, and redid it using the lasted git checked out from github. Everything seems all right. I tried a git subtree pull
after changing upstream and it works well too.
Is git-subtree still too cutting-edge to use in real projects?
Upvotes: 1