Skip to content

Commit dfe0b06

Browse files
Revamp MIGRATION.md to flat consolidation — no internal subdirectories
Agent-Logs-Url: https://github.com/loganfinney27/PyTutorial/sessions/52313881-bd78-4b7c-b651-1d04484711b9 Co-authored-by: loganfinney27 <136375980+loganfinney27@users.noreply.github.com>
1 parent efe85a3 commit dfe0b06

1 file changed

Lines changed: 53 additions & 29 deletions

File tree

MIGRATION.md

Lines changed: 53 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -28,24 +28,25 @@ A **GitHub Organization** named **LAF-US** is recommended to host both repos and
2828

2929
## Target Structure
3030

31+
All content from the current public repos is merged **flat** into the root of `LAF-PUBLIC` — no per-project subdirectories. The goal is to break down silos entirely, not recreate them internally.
32+
3133
### LAF-PUBLIC
3234

3335
```
3436
LAF-PUBLIC/
3537
├── README.md
36-
├── github-pages/ ← loganfinney27.github.io
37-
├── the-gemstone/ ← THE-GEMSTONE
38-
├── ir-court-tracker/ ← IR-Court-Tracker
39-
├── idex-artifacts/ ← IDEX_Artifacts
40-
└── py-tutorial/ ← PyTutorial (this repo)
38+
└── (all files from loganfinney27.github.io, THE-GEMSTONE, IR-Court-Tracker,
39+
IDEX_Artifacts, and PyTutorial merged at root level)
4140
```
4241

42+
> **Note:** If two source repos contain a file with the same name, resolve the conflict manually during migration before committing.
43+
4344
### LAF-PRIVATE
4445

4546
```
4647
LAF-PRIVATE/
4748
├── README.md
48-
└── idaho-vault/ ← IDAHO-VAULT (Obsidian archive)
49+
└── (all files from IDAHO-VAULT merged at root level)
4950
```
5051

5152
---
@@ -66,41 +67,64 @@ LAF-PRIVATE/
6667
gh repo create LAF-US/LAF-PUBLIC --public --description "All public-facing LAF projects"
6768
```
6869

69-
### Step 3: Migrate each public repo into LAF-PUBLIC as a subdirectory
70+
### Step 3: Migrate each public repo into LAF-PUBLIC (flat — no subdirectories)
7071

71-
Use `git subtree` to preserve commit history for each project:
72+
Merge each existing repo directly into the root of `LAF-PUBLIC`, preserving commit history:
7273

7374
```bash
7475
# Clone the new empty LAF-PUBLIC repo
7576
git clone https://github.com/LAF-US/LAF-PUBLIC.git
7677
cd LAF-PUBLIC
7778

78-
# Add each existing repo as a remote and merge it into a subdirectory
79+
# Merge each existing repo directly at root level (no subdirectory)
7980
git remote add py-tutorial https://github.com/loganfinney27/PyTutorial.git
8081
git fetch py-tutorial
81-
git merge --allow-unrelated-histories py-tutorial/main # optional: squash first
82-
# Move only the files that belong to this project (adjust list as needed):
83-
mkdir -p py-tutorial
84-
git mv main.ipynb input.txt output.csv requirements.txt MIGRATION.md py-tutorial/ 2>/dev/null || true
85-
git commit -m "chore: migrate PyTutorial into py-tutorial/"
86-
87-
# Repeat for each remaining repo, creating a dedicated subdirectory each time:
88-
# git remote add the-gemstone https://github.com/loganfinney27/THE-GEMSTONE.git
89-
# git fetch the-gemstone && git merge --allow-unrelated-histories the-gemstone/main
90-
# mkdir -p the-gemstone && git mv <files…> the-gemstone/
91-
# git commit -m "chore: migrate THE-GEMSTONE into the-gemstone/"
92-
# (and so on for ir-court-tracker, idex-artifacts, github-pages)
82+
git merge --allow-unrelated-histories py-tutorial/main
83+
# Resolve any filename conflicts, then:
84+
git commit -m "chore: merge PyTutorial into LAF-PUBLIC"
85+
86+
git remote add the-gemstone https://github.com/loganfinney27/THE-GEMSTONE.git
87+
git fetch the-gemstone
88+
git merge --allow-unrelated-histories the-gemstone/main
89+
git commit -m "chore: merge THE-GEMSTONE into LAF-PUBLIC"
90+
91+
git remote add ir-court-tracker https://github.com/loganfinney27/IR-Court-Tracker.git
92+
git fetch ir-court-tracker
93+
git merge --allow-unrelated-histories ir-court-tracker/main
94+
git commit -m "chore: merge IR-Court-Tracker into LAF-PUBLIC"
95+
96+
git remote add idex-artifacts https://github.com/loganfinney27/IDEX_Artifacts.git
97+
git fetch idex-artifacts
98+
git merge --allow-unrelated-histories idex-artifacts/main
99+
git commit -m "chore: merge IDEX_Artifacts into LAF-PUBLIC"
100+
101+
git remote add github-pages https://github.com/loganfinney27/loganfinney27.github.io.git
102+
git fetch github-pages
103+
git merge --allow-unrelated-histories github-pages/main
104+
git commit -m "chore: merge loganfinney27.github.io into LAF-PUBLIC"
105+
106+
git push origin main
93107
```
94108

95-
> **Tip:** If preserving full history is not important, you can simply copy the files into subdirectories without the remote merge step.
109+
> **Conflict resolution:** If two repos have a file with the same name (e.g., `README.md`), Git will flag a merge conflict. Manually combine the content, `git add` the resolved file, then commit before moving to the next repo.
96110
97111
### Step 4: Create the LAF-PRIVATE repository
98112

99113
```bash
100114
gh repo create LAF-US/LAF-PRIVATE --private --description "Private LAF projects and archives"
101115
```
102116

103-
Then migrate IDAHO-VAULT into `idaho-vault/` using the same `git subtree` approach.
117+
Then merge IDAHO-VAULT directly into the root of `LAF-PRIVATE`:
118+
119+
```bash
120+
git clone https://github.com/LAF-US/LAF-PRIVATE.git
121+
cd LAF-PRIVATE
122+
git remote add idaho-vault https://github.com/loganfinney27/IDAHO-VAULT.git
123+
git fetch idaho-vault
124+
git merge --allow-unrelated-histories idaho-vault/main
125+
git commit -m "chore: merge IDAHO-VAULT into LAF-PRIVATE"
126+
git push origin main
127+
```
104128

105129
### Step 5: Archive the old repositories
106130

@@ -120,13 +144,13 @@ Once migration is complete and verified:
120144

121145
- [ ] Create GitHub Organization **LAF-US**
122146
- [ ] Create `LAF-PUBLIC` repo (public)
123-
- [ ] Migrate `loganfinney27.github.io``LAF-PUBLIC/github-pages/`
124-
- [ ] Migrate `THE-GEMSTONE``LAF-PUBLIC/the-gemstone/`
125-
- [ ] Migrate `IR-Court-Tracker``LAF-PUBLIC/ir-court-tracker/`
126-
- [ ] Migrate `IDEX_Artifacts``LAF-PUBLIC/idex-artifacts/`
127-
- [ ] Migrate `PyTutorial``LAF-PUBLIC/py-tutorial/`
147+
- [ ] Merge `loganfinney27.github.io``LAF-PUBLIC` (flat)
148+
- [ ] Merge `THE-GEMSTONE``LAF-PUBLIC` (flat)
149+
- [ ] Merge `IR-Court-Tracker``LAF-PUBLIC` (flat)
150+
- [ ] Merge `IDEX_Artifacts``LAF-PUBLIC` (flat)
151+
- [ ] Merge `PyTutorial``LAF-PUBLIC` (flat)
128152
- [ ] Create `LAF-PRIVATE` repo (private)
129-
- [ ] Migrate `IDAHO-VAULT``LAF-PRIVATE/idaho-vault/`
153+
- [ ] Merge `IDAHO-VAULT``LAF-PRIVATE` (flat)
130154
- [ ] Archive all original repositories
131155
- [ ] Update any external links/references
132156

0 commit comments

Comments
 (0)