2026-07-26 17:09:48 -04:00
# Forgejo: Git Hosting & Code Collaboration
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
**Forgejo** is the central self-hosted Git platform for **The Nest** . A lightweight fork of Gitea, Forgejo provides version control, code review workflows, issue tracking, and container/package registries—all fully integrated into our single sign-on identity system.
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
---
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
## 1. Web Access & Initial Setup
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
1. Open ** [weaver.mynest.love ](https://weaver.mynest.love )** in your Web browser.
2. Click **Sign In** and select ** "Sign in with The Nest"**.
3. Log in using your standard Nest passkey.
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
---
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
## 2. Setting Up SSH Keys (Required for Git Push/Pull)
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
> [!WARNING]
> **HTTP Git Access is Disabled**
> For security reasons, HTTP/HTTPS Git cloning and pushing are completely disabled on The Nest. All command-line Git interactions must use **SSH**.
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
To interact with repositories from your terminal or command line, you must add your SSH public key to your Forgejo account.
### Step 1: Generate an SSH Key Pair
If you don't already have an SSH key, open your terminal (macOS/Linux) or Git Bash / PowerShell (Windows) and run:
```bash
ssh-keygen -t ed25519 -C "your_email@example .com"
```
Press `Enter` to accept the default file location. You can optionally enter a passphrase for extra security.
### Step 2: Copy Your Public Key
Display and copy your **public** key (never share or copy your private key!):
* **macOS:** `pbcopy < ~/.ssh/id_ed25519.pub`
* **Linux:** `xclip -selection clipboard < ~/.ssh/id_ed25519.pub` (or `cat ~/.ssh/id_ed25519.pub` )
* **Windows (PowerShell):** `Get-Content ~/.ssh/id_ed25519.pub | Set-Clipboard`
### Step 3: Add Your Public Key to Forgejo
1. Sign into ** [weaver.mynest.love ](https://weaver.mynest.love )**.
2. Click your profile avatar in the top-right corner and select **Settings** .
3. Select **SSH / GPG Keys** from the left sidebar.
4. Click **Add Key** .
5. Give your key a recognizable name (e.g., `MacBook Pro` or `Desktop Workstation` ), paste your copied public key into the **Content** box, and click **Add Key** .
### Step 4: Test Your SSH Connection
In your terminal, test your authentication against The Nest's SSH Git server:
```bash
ssh -T -p 22 git@ssh .weaver.mynest.love
```
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
If configured correctly, Forgejo will output a welcome message confirming successful authentication!
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
---
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
## 3. How to Contribute & Collaborate
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
Whether you are writing code, tweaking configuration files, or reporting bugs, everyone can contribute to projects hosted on The Nest.
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
### Option A: Opening Issues (Bug Reports & Feature Requests)
If you find something broken, want to request a feature, or need to ask a question:
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
1. Navigate to the project's repository on ** [weaver.mynest.love ](https://weaver.mynest.love )**.
2. Click the **Issues** tab at the top of the repository.
3. Click the green **New Issue** button.
4. Fill in a descriptive **Title** .
5. In the **Description** box, include:
* **Summary:** What is the issue or feature request?
* **Steps to Reproduce:** (For bugs) Step-by-step instructions to recreate the problem.
* **Expected vs. Actual Behavior:** What you expected to happen vs. what actually happened.
6. Click **Create Issue** . You will automatically receive updates when project maintainers comment or update the issue status.
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
### Option B: Contributing Code via Pull Requests
1. **Clone the repository using SSH:**
```bash
git clone git@ssh .weaver.mynest.love:organization/repository-name.git
```
2. **Create a local working branch:**
```bash
git checkout -b feature/my-changes
```
3. **Commit and push your changes:**
```bash
git commit -m "Describe your changes clearly"
git push origin feature/my-changes
```
4. **Open a Pull Request:** Navigate to the repository on Forgejo, click **New Pull Request** , select your branch, and submit it for review.
---
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
## 4. Package Registry & CI/CD Pipelines
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
### Container & Package Registry
Forgejo hosts a built-in package registry for sharing container images and dependencies:
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
* **Docker / OCI Registry:**
```bash
docker pull weaver.mynest.love/nest/your-image:tag
```
* **Language Package Managers (npm / Python / Go):**
Generate a personal access token under **Settings → Applications → Generate Token** , then configure your local package manager to authenticate with `weaver.mynest.love` .
2026-07-25 14:25:33 -04:00
2026-07-26 17:09:48 -04:00
### Automated Workflows (Forgejo Actions)
Repositories can automate builds, tests, and deployments using Forgejo Actions (compatible with GitHub Actions syntax). Place your workflow definition files inside `.forgejo/workflows/` in your repository root.
2026-07-25 14:25:33 -04:00
---
2026-07-26 17:09:48 -04:00
## 5. Service Summary & Related Links
| Component | Endpoint / URL | Access Method | Purpose |
| :--- | :--- | :--- | :--- |
| **Web UI** | [weaver.mynest.love ](https://weaver.mynest.love ) | Browser (Passkey) | Repository management, issue tracking, and PRs |
| **Git SSH Server** | `ssh.weaver.mynest.love` (Port `22` ) | SSH Key | Command-line Git cloning, pulling, and pushing |
| **Package Registry** | [weaver.mynest.love/packages ](https://weaver.mynest.love/packages ) | API / Token | Container images and package management |
### Related Nest Documentation:
* **[Semaphore ](https://semaphore.k3s.home.nest ):** Ansible automation UI for infrastructure deployment and execution.