🌳 Git Repository Server
Collaborative version control • Terminal-friendly • Anonymous hosting
📡 Access Points
git@git.4-0-4.iossh://git.4-0-4.iohttps://gitx.4-0-4.io22 (SSH) / 443 (HTTPS)🚀 Getting Started
Our git server provides an interactive Terminal User Interface (TUI) and a CLI that makes browsing and managing repositories intuitive and efficient. Connect via SSH to explore available repositories, view code, and interact with your projects - all from your terminal.
💻 Quick Start Guide
🔍 Browse the TUI
Launch the interactive interface to explore repositories:
ssh git.4-0-4.io
📥 Clone a Repository
Standard git clone operation via SSH:
git clone git@git.4-0-4.io:repository-name.git
Or via HTTPS:
git clone https://gitx.4-0-4.io/repository-name.git
📤 Push to Server
After cloning or setting up a new repository:
git remote add origin git@git.4-0-4.io:your-repo.git git push -u origin main
Setting up SSH authentication
Generate SSH key (if you don't have one):
ssh-keygen -t ed25519 -C "your_email@example.com"
Copy your public key:
cat ~/.ssh/id_ed25519.pub
Send it to Dasho for account setup.
Once you have an account, you can add extra keys as needed:
Add to server via CLI:
Run: ssh -i ~/.ssh/id_ed25519 git.4-0-4.io pubkey add <AUTHORIZED_KEY>
🆕 Create a New Repository
Initialize a new repository on the server:
Via Push Upstream (recommended):
git push -u git.4-0-4.io main
Automatically creates the repository if it doesn't exist.
Via command line:
ssh git@git.4-0-4.io repo create my-new-project
📋 List All Repositories
View available repositories from the command line:
ssh git@git.4-0-4.io repos list
ℹ️ Repository Information
Get details about a specific repository:
ssh git@git.4-0-4.io repo info repository-name
✨ Server Features
🎨 Beautiful TUI
Navigate repositories with an elegant, keyboard-driven interface
🔐 SSH Authentication
Secure key-based authentication for push/pull operations
🌐 Multiple Protocols
Access via SSH, HTTPS, or native Git protocol
👥 Collaborative
Manage permissions, collaborators, and access control
📊 Repository Insights
View commit history, contributors, and tags
🎯 Lightweight
Fast, efficient, and runs smoothly in any terminal
🔄 Common Workflows
Starting a New Project
# 1. Create repository on server (via TUI or command) ssh git.4-0-4.io repo create my-project # 2. Initialize local repository mkdir my-project && cd my-project git init # 3. Add remote and push git remote add origin git@git.4-0-4.io:my-project.git git add . git commit -m "Initial commit" git push -u origin main
Contributing to Existing Repository
# 1. Clone the repository git clone git@git.4-0-4.io:project-name.git cd project-name # 2. Create a feature branch git checkout -b feature/my-feature # 3. Make changes, commit, and push git add . git commit -m "Add new feature" git push origin feature/my-feature
Migrating from GitHub/GitLab
# 1. Clone your existing repository directly to the server ssh -i ~/.ssh/id_ed25519 git.4-0-4.io repo import <repo_name> https://github.com/<user>/<repo>.git # 2. Then clone and use as usual: git clone git@git.4-0-4.io:repo.git // OR git clone https://gitx.4-0-4.io/repo.git # 3. Push use as normal mirror to our server ...edit.... ...stage... git push git@git.4-0-4.io:repo.git
💡 Pro Tips
🎯 Quick Commands
Use command-line tools for rapid operations:
ssh git@git.4-0-4.io help- Show all commandsssh git@git.4-0-4.io repo list- List reposssh git@git.4-0-4.io repo create <name>- Create repossh git@git.4-0-4.io repo delete <name>- Delete repo
⚡ SSH Config
Add to ~/.ssh/config for convenience:
Host 404
HostName git.4-0-4.io
User git
IdentityFile ~/.ssh/id_ed25519
Then simply: git clone 404:repo.git
🔍 Browse via TUI
Access the TUI interface at git.4-0-4.io to:
- View repository contents
- Read README files
- Explore commit history
- Copy clone commands with ease
🛡️ Private Repositories
Control repository visibility:
- Public repos are readable by anyone
- Private repos require authentication
- Manage access via the CLI settings
- Add collaborators by their SSH pubkeys
🔧 Advanced Usage
Repository Descriptions & READMEs
Set repository description via TUI or command:
ssh git@git.4-0-4.io repo description repo-name "Your description here"
The server automatically renders README.md files in the tui interface.
Webhooks & Automation
Configure post-receive hooks for CI/CD integration:
# Access the repository hooks directory ssh git@git.4-0-4.io repo webhook create <repo-name> <webhook-URL>
Git LFS Support
Large File Storage (LFS) is supported for binary files:
git lfs install git lfs track "*.psd" git add .gitattributes git commit -m "Track PSD files with LFS" git push
Repository Mirroring
Set up automatic mirroring from external sources:
# Create a mirror repository ssh git@git.4-0-4.io repo create --mirror external-project # Set up pull mirror (updates automatically) ssh git@git.4-0-4.io repo mirror set external-project https://github.com/user/repo.git
❓ Frequently Asked Questions
How do I reset my SSH key?
Use the CLI (ssh git.4-0-4.io pubkeys) and manage your keys from there. You can add, list, or remove keys at any time.
Can I use this with existing git workflows?
Absolutely! Our server is fully compatible with standard Git. All your favorite tools (git-flow, GitHub Desktop, GitKraken, etc.) work seamlessly.
What's the repository size limit?
There's no hard limit, but we recommend keeping individual repositories under 5GB for optimal performance. Use Git LFS for large binary files.
Since I'm a hobbyist and not a big company, please be considerate of storage and bandwidth. Git directories that are excessively large may be removed after notice.
How do I delete a repository?
Via command: ssh git@git.4-0-4.io repo delete repo-name
Is there API access?
Yes! Use the command-line interface for programmatic access. All commands can be scripted and automated (but this will be on you to figure out). For example: ssh git@git.4-0-4.io repo list
Can I import from other platforms?
Yes! Use git clone --mirror from the source, then git push --mirror to our server. The CLI also has an import wizard for popular platforms.
🆘 Need Help?
Join the chat for support and discussions:
- 📡 IRC Channel - Real-time support
- 📖 Documentation - Comprehensive guides
- 💬 Forum - Community discussions
Quick help command:
ssh git@git.4-0-4.io help ssh git@git.4-0-4.io <command> --help