open-navigator / web_docs /docs /deployment /rename-repository.md
jcbowyer's picture
Clean HuggingFace deployment without binary files
e59d91d
|
Raw
History Blame Contribute Delete
7.61 kB
---
sidebar_position: 12
---
# Rename Repository & Make Public
This guide walks you through renaming your GitHub repository to "open-navigator-for-engagement" and making it public.
## πŸ“‹ Pre-Flight Checklist
Before you begin:
- [ ] Commit and push all local changes
- [ ] Backup your repository (optional but recommended)
- [ ] Ensure you have admin access to the repository
- [ ] Review what will be made public
## πŸ”„ Step 1: Rename Repository on GitHub
### Option A: Via GitHub Web Interface (Recommended)
1. **Navigate to your repository** on GitHub
2. **Click "Settings"** tab (top right)
3. **Scroll to "Repository name"** section
4. **Change name to:** `open-navigator-for-engagement`
5. **Click "Rename"** button
**βœ… GitHub automatically:**
- Redirects old URL to new URL
- Updates all clone URLs
- Preserves issues, PRs, stars, watchers
### Option B: Via GitHub CLI
```bash
# Install GitHub CLI if not already installed
# sudo apt install gh # Linux
# brew install gh # macOS
# Authenticate
gh auth login
# Rename repository
gh repo rename open-navigator-for-engagement
```
## 🌍 Step 2: Make Repository Public
### Option A: Via GitHub Web Interface
1. **Still in Settings**, scroll down to **"Danger Zone"**
2. **Click "Change visibility"**
3. **Select "Make public"**
4. **Read the warnings** (sensitive data will be publicly visible)
5. **Type repository name to confirm:** `open-navigator-for-engagement`
6. **Click "I understand, change repository visibility"**
### Option B: Via GitHub CLI
```bash
gh repo edit --visibility public
```
## ⚠️ Important: Review Before Making Public
**Things that will become public:**
- βœ… All code and commit history
- βœ… All issues and pull requests
- βœ… All releases and tags
- βœ… Wiki pages
- βœ… GitHub Actions workflows
**Check for sensitive data:**
```bash
# Search for potential secrets
cd /home/developer/projects/open-navigator
# Check .env files (should be in .gitignore)
git ls-files | grep -E '\.env$'
# Check for API keys in committed files
git grep -i "api[_-]key"
git grep -i "secret"
git grep -i "password"
git grep -i "token"
# Review .gitignore
cat .gitignore
```
**Recommended .gitignore additions:**
```
# Secrets and credentials
.env
.env.local
*.pem
*.key
secrets/
# API tokens
*_token.txt
credentials.json
# Local configuration
config/local.py
```
## πŸ”— Step 3: Update Local Repository
After renaming on GitHub:
```bash
cd /home/developer/projects/open-navigator
# Check current remote
git remote -v
# Update remote URL (replace USERNAME with your GitHub username/org)
git remote set-url origin https://github.com/getcommunityone/open-navigator-for-engagement.git
# Verify
git remote -v
# Fetch to confirm connection
git fetch
# Output should show:
# origin https://github.com/getcommunityone/open-navigator-for-engagement.git (fetch)
# origin https://github.com/getcommunityone/open-navigator-for-engagement.git (push)
```
## πŸ“ Step 4: Update Code References
Run the provided script to update all repository URLs in your code:
```bash
cd /home/developer/projects/open-navigator
# Make script executable
chmod +x update-repo-urls.sh
# Run the update script
./update-repo-urls.sh
# Review changes
git diff
# Commit the changes
git add .
git commit -m "chore: update repository name to open-navigator-for-engagement"
git push
```
### Manual Updates (if needed)
Key files to check:
1. **README.md** - Clone instructions
2. **setup.py** - Package metadata URLs
3. **website/docusaurus.config.ts** - Documentation links
4. **agents/scraper.py** - User-Agent string
5. **package.json** (if exists) - Repository field
## 🎯 Step 5: Update External Services (If Applicable)
If you're using external services, update them:
- **Databricks Apps**: Update app configuration
- **CI/CD Pipelines**: Update repository URLs
- **Webhooks**: Will automatically redirect
- **Badges**: Update markdown badge URLs
- **Documentation links**: Already handled by script
## βœ… Verification Checklist
After completing all steps:
- [ ] Repository renamed on GitHub
- [ ] Repository is now public
- [ ] Local git remote updated
- [ ] Code references updated
- [ ] Changes committed and pushed
- [ ] Old URL redirects to new URL
- [ ] Clone new repository works: `git clone https://github.com/getcommunityone/open-navigator-for-engagement.git`
- [ ] Documentation links work
- [ ] No sensitive data exposed
## πŸ” Test the New Repository
```bash
# Clone from new URL (in a different directory)
cd /tmp
git clone https://github.com/getcommunityone/open-navigator-for-engagement.git
cd open-navigator-for-engagement
# Verify it works
ls -la
cat README.md
# Clean up test
cd ..
rm -rf open-navigator-for-engagement
```
## πŸŽ‰ Post-Rename Actions
### Update Social & Marketing
- [ ] Update website links
- [ ] Update social media profiles
- [ ] Update blog posts or articles
- [ ] Update documentation sites
- [ ] Notify collaborators
### Add Repository Metadata
Make your repository discoverable:
1. **Add Topics** (on GitHub):
- civic-tech
- open-data
- government-transparency
- advocacy
- policy-analysis
- municipal-data
- nonprofit-data
2. **Add Description**: "AI-powered platform analyzing municipal meetings and budgets across 90,000+ U.S. jurisdictions to identify advocacy opportunities"
3. **Add Website**: Link to your deployment or documentation
4. **Enable Discussions** (optional): Settings β†’ Features β†’ Discussions
5. **Add License Badge** to README (already has MIT badge)
## πŸ“š Documentation Updates
The script automatically updates:
- All README files
- Docusaurus configuration
- Python setup files
- Documentation pages
- Issue templates
## πŸ”’ Security Considerations
**After making public:**
1. **Enable Security Features**:
- Go to Settings β†’ Security
- Enable Dependabot alerts
- Enable Dependabot security updates
- Enable Code scanning (if applicable)
2. **Add SECURITY.md**:
```markdown
# Security Policy
## Reporting a Vulnerability
Please report security vulnerabilities to: security@communityone.com
```
3. **Review Branch Protection**:
- Protect main branch
- Require pull request reviews
- Require status checks
## πŸ†˜ Troubleshooting
### Issue: "Repository not found" after rename
**Solution**: Update your local remote:
```bash
git remote set-url origin https://github.com/getcommunityone/open-navigator-for-engagement.git
```
### Issue: Old repository URL still accessible
**Expected**: GitHub automatically redirects old URLs to new ones for convenience.
### Issue: Collaborators can't access
**Solution**: They need to update their remotes too (same command as above).
### Issue: Sensitive data was committed
**Solutions**:
1. **Remove from history**: Use `git filter-repo` or BFG Repo-Cleaner
2. **Rotate secrets**: Change any exposed API keys, tokens, passwords
3. **Contact GitHub Support**: For complete removal assistance
## πŸ“ž Support
- **GitHub Renaming Docs**: https://docs.github.com/en/repositories/creating-and-managing-repositories/renaming-a-repository
- **Making Public**: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/setting-repository-visibility
## ✨ Success!
Your repository is now:
- βœ… Renamed to `open-navigator-for-engagement`
- βœ… Publicly accessible
- βœ… All references updated
- βœ… Ready for community contributions
**New Repository URL**: https://github.com/getcommunityone/open-navigator-for-engagement
Welcome to open source! πŸŽ‰