You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.4 KiB

scm-setup

Source Control Server Preparation

Pre-requisite

  1. ssh client (built-in on Windows 10. Preinstall with Git installation). For windows 7 alternative, try Putty
  2. git
# use windows package manager
$ winget install Git.Git
  1. TortoiseGit
# use windows package manager
$ winget install TortoiseGit.TortoiseGit
  1. Tailscale
# use windows package manager
$ winget install tailscale.tailscale

Configuration

  1. setup sshkey. Run below to generate the private / public key. SSH key-pair
$ ssh-keygen
  1. Pass the c:\users\<username>\.ssh\id_rsa.pub to administrator to authorise the access to server (xxx.xxx.xxx.xxx)
# from ubuntu shell
$ ssh-copy-id -i ~/.ssh/id_rsa.pub mitpenang@xxx.xxx.xxx.xxx/home/mitpenang/.ssh/authorized_keys

# from powershell
PS c:> type $env:USERPROFILE\.ssh\id_rsa.pub | ssh mitpenang@xxx.xxx.xxx.xxx "cat >> .ssh/authorized_keys"
  1. Setup Tailscale. Need remote access to administrator to do first login. Please install AnyDesk to facilitate remote access
  2. Setup c:\Windows\System32\Drivers\etc\hosts file. Install PowerToys. Add the following entry to host file

127.0.0.1      dev.mitech.com.sg                                 # Test Eng Server

  1. Setup git profile configuration
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

# setup default branch name as `main`
$ git config --global init.defaultBranch main

# Checking the settings
$ git config --list

Accessing the server

  1. Establish ssh port forwarding. Open a command prompt. Run below command. The ssh IP address can be found from Tailscale console
$ ssh -L 3000:172.16.16.2:3000 -L 222:172.16.16.2:222 mitpenang@100.72.57.125
  1. Open Chrome. Browse to Source Control Server Mitech : Gitea
  2. To clone, use git ssh://...

Git

  1. Documentation
  2. GitHub Flow Branching Strategy GitHub Flow