# GitHub Setup Guide ## Creating the Private Repository 1. **Go to GitHub**: https://github.com/new 2. **Repository Settings**: - **Owner**: Your GitHub username or organization (e.g., `atomaste`) - **Repository name**: `nx-optimaster` (or your preferred name) - **Description**: "Advanced optimization platform for Siemens NX Simcenter with LLM integration" - **Visibility**: ✅ **Private** - **DO NOT** initialize with README, .gitignore, or license (we already have these) 3. **Click "Create repository"** ## Pushing to GitHub After creating the repository on GitHub, run these commands: ```bash cd /c/Users/antoi/Documents/Atomaste/Atomizer # Add the remote repository git remote add origin https://github.com/YOUR-USERNAME/nx-optimaster.git # OR if using SSH: # git remote add origin git@github.com:YOUR-USERNAME/nx-optimaster.git # Push the initial commit git branch -M main git push -u origin main ``` ## Verify Push Visit your repository at: `https://github.com/YOUR-USERNAME/nx-optimaster` You should see: - README.md displayed on the main page - All 12 files committed - Private repository badge ## Next Steps ### Set Up GitHub Actions (Optional) Create `.github/workflows/tests.yml` for automated testing: ```yaml name: Tests on: [push, pull_request] jobs: test: runs-on: windows-latest steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: '3.10' - run: pip install -r requirements.txt - run: pytest ``` ### Protect Main Branch Settings → Branches → Add rule: - Branch name pattern: `main` - ✅ Require pull request reviews before merging - ✅ Require status checks to pass ### Add Collaborators Settings → Collaborators → Add people ## Clone on Another Machine ```bash git clone https://github.com/YOUR-USERNAME/nx-optimaster.git cd nx-optimaster pip install -r requirements.txt ``` ## Useful Git Commands ```bash # Check status git status # View commit history git log --oneline # Create a new branch git checkout -b feature/new-feature # Push branch to GitHub git push -u origin feature/new-feature # Pull latest changes git pull origin main ``` --- **Note**: Replace `YOUR-USERNAME` with your actual GitHub username throughout this guide.