Trainspot KK operates a self-hosted GitLab instance at git.trainspot.jp for all source code management, CI/CD, and project collaboration.
URL: https://git.trainspot.jp
Authentication: Use your Trainspot credentials
# Generate a new SSH key
ssh-keygen -t ed25519 -C "your.email@trainspot.jp"
# Start the ssh-agent
eval "$(ssh-agent -s)"
# Add your SSH key to the agent
ssh-add ~/.ssh/id_ed25519
cat ~/.ssh/id_ed25519.pubssh -T git@git.trainspot.jp
# Set your identity
git config --global user.name "Your Name"
git config --global user.email "your.email@trainspot.jp"
# Set default branch name
git config --global init.defaultBranch main
# Configure line endings (macOS/Linux)
git config --global core.autocrlf input
# Set GitLab as default remote
git config --global url."git@git.trainspot.jp:".insteadOf "https://git.trainspot.jp/"
We follow GitFlow branching model:
feature/user-authentication)hotfix/payment-bug)release/v1.2.0)# Update develop branch
git checkout develop
git pull origin develop
# Create feature branch
git checkout -b feature/your-feature-name
# Make your changes
# ...
# Commit your changes
git add .
git commit -m "Add: description of your changes"
# Push to GitLab
git push origin feature/your-feature-name
Follow conventional commits:
type: description
[optional body]
[optional footer]
Types:
feat: New featurefix: Bug fixdocs: Documentation changesstyle: Code style changes (formatting)refactor: Code refactoringtest: Adding testschore: Build process or auxiliary toolsExamples:
git commit -m "feat: add QR code scanner to POS Stack"
git commit -m "fix: resolve payment processing timeout issue"
git commit -m "docs: update API documentation for Event Base"
develop)## What does this MR do?
Brief description of changes
## Related issues
Closes #123
## Screenshots (if applicable)
[Add screenshots]
## Checklist
- [ ] Tests added/updated
- [ ] Documentation updated
- [ ] Code reviewed by team member
- [ ] CI pipeline passes
Our GitLab CI/CD typically includes:
Pipelines are configured via .gitlab-ci.yml in repository root:
stages:
- build
- test
- deploy
build_job:
stage: build
script:
- flutter build apk
artifacts:
paths:
- build/app/outputs/
test_job:
stage: test
script:
- flutter test
deploy_staging:
stage: deploy
script:
- ./deploy.sh staging
only:
- develop
event-base-platform: Event Base main platformaccess-stack-app: Access Stack mobile apppos-stack-app: POS Stack mobile appsales-stack-app: Sales Stack mobile apptime-stack-app: Time Stack mobile apptask-stack-app: Task Stack mobile app✅ DO:
❌ DON'T:
main or develop✅ DO:
❌ DON'T:
# Test SSH connection
ssh -vT git@git.trainspot.jp
# Check SSH agent
ssh-add -l
# Re-add SSH key
ssh-add ~/.ssh/id_ed25519
# Pull latest changes
git pull origin develop --rebase
# Resolve conflicts if any
# Then push again
git push origin feature/your-branch
# Update your branch with latest develop
git checkout develop
git pull origin develop
git checkout feature/your-branch
git rebase develop
# Resolve conflicts in your editor
git add .
git rebase --continue
git push origin feature/your-branch --force-with-lease
# Clone repository
git clone git@git.trainspot.jp:trainspot/project-name.git
# Check status
git status
# Create and switch to new branch
git checkout -b feature/new-feature
# Stage changes
git add .
# Commit changes
git commit -m "feat: add new feature"
# Push to remote
git push origin feature/new-feature
# Pull latest changes
git pull origin develop
# View commit history
git log --oneline --graph
# Undo last commit (keep changes)
git reset --soft HEAD~1
# Discard local changes
git checkout -- filename
g + p: Go to projectsg + i: Go to issuesg + m: Go to merge requestsg + c: Go to CI/CD pipelines?: Show keyboard shortcutsLast Updated: October 2025
Maintained By: Development Team