Merge org wiki repos into profile repo wikis #593

Closed
opened 2026-06-09 19:27:51 +00:00 by jmiller · 2 comments
Owner

Summary

Consolidate the four organizational repos into two by merging wiki content into the profile repos' built-in Gitea wikis.

Current State

Repo Type Content
.profile Public README.md (org profile shown to visitors)
.profile-private Private README.md (org profile shown to members)
wiki Public 55 markdown pages — standards, architecture, contributing, products, etc.
wiki-private Private 60 markdown pages — infrastructure, operations, security, clients, etc.

Target State

Repo README Wiki
.profile Public org profile (existing) 55 pages from wiki repo
.profile-private Private org profile (existing) 60 pages from wiki-private repo

wiki and wiki-private repos archived after migration.

Plan

Phase 1: Prepare

  • Verify .profile and .profile-private have wikis enabled
  • Audit wiki content for any remaining MokoJoom or Dolibarr references
  • Ensure all wiki page links use relative paths (not absolute repo URLs)

Phase 2: Migrate Public Wiki

  • Enable wiki on .profile repo if not already
  • Push wiki repo content as Gitea wiki pages on .profile
    • Option A: Clone .profile.wiki.git, copy markdown files, push
    • Option B: Use Gitea API to create each page
  • Flatten directory structure for Gitea wiki (dirs become page-name prefixes or linked pages)
  • Verify all pages render correctly in Gitea wiki UI
  • Update Home.md navigation links for new wiki URL structure

Phase 3: Migrate Private Wiki

  • Enable wiki on .profile-private repo
  • Push wiki-private repo content as Gitea wiki pages on .profile-private
  • Same flattening/link-fixing as public wiki
  • Verify all pages render correctly

Phase 4: Update References

  • Update .profile README wiki link to point to its own wiki
  • Update .profile-private README wiki link
  • Update mokoplatform wiki Home page links
  • Update any cross-references in product repo wikis
  • Update MEMORY.md references
  • Update feedback_infra_private.md memory

Phase 5: Cleanup

  • Archive wiki repo (do not delete — preserves git history)
  • Archive wiki-private repo
  • Verify GitHub mirrors updated (if mirrored)

Considerations

Gitea wiki structure: Gitea wikis are flat (no subdirectories). The current wiki repos use directories (standards/, architecture/, etc.). Options:

  1. Prefix pages: standards-coding-php instead of standards/coding-php.md
  2. Keep flat with Home navigation: Use Home.md as the index linking to all pages
  3. Use Gitea wiki sidebar: Configure sidebar for navigation

Wiki git access: Gitea wikis have their own git repo at {repo}.wiki.git. Content can be pushed directly via git clone/push, which is the most efficient migration path.

URL changes: Wiki URLs change from wiki/wiki/Home to .profile/wiki/Home. All internal links need updating."

## Summary Consolidate the four organizational repos into two by merging wiki content into the profile repos' built-in Gitea wikis. ## Current State | Repo | Type | Content | |------|------|---------| | `.profile` | Public | README.md (org profile shown to visitors) | | `.profile-private` | Private | README.md (org profile shown to members) | | `wiki` | Public | 55 markdown pages — standards, architecture, contributing, products, etc. | | `wiki-private` | Private | 60 markdown pages — infrastructure, operations, security, clients, etc. | ## Target State | Repo | README | Wiki | |------|--------|------| | `.profile` | Public org profile (existing) | 55 pages from `wiki` repo | | `.profile-private` | Private org profile (existing) | 60 pages from `wiki-private` repo | `wiki` and `wiki-private` repos archived after migration. ## Plan ### Phase 1: Prepare - [ ] Verify `.profile` and `.profile-private` have wikis enabled - [ ] Audit wiki content for any remaining MokoJoom or Dolibarr references - [ ] Ensure all wiki page links use relative paths (not absolute repo URLs) ### Phase 2: Migrate Public Wiki - [ ] Enable wiki on `.profile` repo if not already - [ ] Push `wiki` repo content as Gitea wiki pages on `.profile` - Option A: Clone `.profile.wiki.git`, copy markdown files, push - Option B: Use Gitea API to create each page - [ ] Flatten directory structure for Gitea wiki (dirs become page-name prefixes or linked pages) - [ ] Verify all pages render correctly in Gitea wiki UI - [ ] Update `Home.md` navigation links for new wiki URL structure ### Phase 3: Migrate Private Wiki - [ ] Enable wiki on `.profile-private` repo - [ ] Push `wiki-private` repo content as Gitea wiki pages on `.profile-private` - [ ] Same flattening/link-fixing as public wiki - [ ] Verify all pages render correctly ### Phase 4: Update References - [ ] Update `.profile` README wiki link to point to its own wiki - [ ] Update `.profile-private` README wiki link - [ ] Update mokoplatform wiki Home page links - [ ] Update any cross-references in product repo wikis - [ ] Update MEMORY.md references - [ ] Update `feedback_infra_private.md` memory ### Phase 5: Cleanup - [ ] Archive `wiki` repo (do not delete — preserves git history) - [ ] Archive `wiki-private` repo - [ ] Verify GitHub mirrors updated (if mirrored) ## Considerations **Gitea wiki structure:** Gitea wikis are flat (no subdirectories). The current wiki repos use directories (`standards/`, `architecture/`, etc.). Options: 1. **Prefix pages:** `standards-coding-php` instead of `standards/coding-php.md` 2. **Keep flat with Home navigation:** Use Home.md as the index linking to all pages 3. **Use Gitea wiki sidebar:** Configure sidebar for navigation **Wiki git access:** Gitea wikis have their own git repo at `{repo}.wiki.git`. Content can be pushed directly via git clone/push, which is the most efficient migration path. **URL changes:** Wiki URLs change from `wiki/wiki/Home` to `.profile/wiki/Home`. All internal links need updating."
Author
Owner

Correction: MokoGitea supports folder-based wikis

The Considerations section is wrong — upstream Gitea is flat-only, but MokoGitea supports directory-based wiki structure. This simplifies the migration significantly:

  • No flattening needed — standards/coding-php.md stays as-is
  • Directory structure from wiki repos maps 1:1 to the Gitea wiki
  • Migration is a straight git push into .profile.wiki.git

Revised Migration (simplified)

# Public wiki
git clone .profile.wiki.git
cp -r wiki-content/* .profile.wiki/
git add -A && git commit && git push

# Private wiki (same approach)
git clone .profile-private.wiki.git
cp -r wiki-private-content/* .profile-private.wiki/
git add -A && git commit && git push

No page renaming or link rewriting needed (except base repo URLs in cross-references).

## Correction: MokoGitea supports folder-based wikis The Considerations section is wrong — upstream Gitea is flat-only, but **MokoGitea supports directory-based wiki structure**. This simplifies the migration significantly: - No flattening needed — `standards/coding-php.md` stays as-is - Directory structure from wiki repos maps 1:1 to the Gitea wiki - Migration is a straight git push into `.profile.wiki.git` ### Revised Migration (simplified) ```bash # Public wiki git clone .profile.wiki.git cp -r wiki-content/* .profile.wiki/ git add -A && git commit && git push # Private wiki (same approach) git clone .profile-private.wiki.git cp -r wiki-private-content/* .profile-private.wiki/ git add -A && git commit && git push ``` No page renaming or link rewriting needed (except base repo URLs in cross-references).
Author
Owner

Migration complete. All 5 phases done:

  1. Wikis enabled on both profile repos
  2. Public wiki (55 pages) pushed to .profile.wiki.git
  3. Private wiki (59 pages) pushed to .profile-private.wiki.git
  4. README links updated on both profiles to point to new wiki locations
  5. wiki and wiki-private repos archived

Wiki URLs:

Migration complete. All 5 phases done: 1. Wikis enabled on both profile repos 2. Public wiki (55 pages) pushed to `.profile.wiki.git` 3. Private wiki (59 pages) pushed to `.profile-private.wiki.git` 4. README links updated on both profiles to point to new wiki locations 5. `wiki` and `wiki-private` repos archived Wiki URLs: - Public: https://git.mokoconsulting.tech/MokoConsulting/.profile/wiki - Private: https://git.mokoconsulting.tech/MokoConsulting/.profile-private/wiki - mokoplatform: https://git.mokoconsulting.tech/MokoConsulting/mokoplatform/wiki
Sign in to join this conversation.