Facebook X (Twitter) Instagram
    TecAdmin
    • Home
    • FeedBack
    • Submit Article
    • About Us
    Facebook X (Twitter) Instagram
    TecAdmin
    You are at:Home»GIT»How to Setup Your System with Multiple Git Accounts

    How to Setup Your System with Multiple Git Accounts

    By RahulDecember 4, 20204 Mins Read

    Being a software developer or system administrator, you may have need to work with multiple Git repositories from the differnet-2 account. For example, you may have multiple Github accounts, Gitlab, Bitbucket or AWS Codecommit accounts for the projects. If you are using http/https protocol to access git repositories, may face issues with the authentication. In this situation, ssh based access is the best option to access repositories.

    This tutorial will help you to configure you Unix/Linux system to connect multiple Git account with ssh key pare based access.

    Step 1 – Generate New SSH keys

    First of all, check for all the available SSH keys in your account. Type: ls -l ~/.ssh to list all key pairs, So you won’t overwrite any key with below commands.

    Let’s create first key pair by typing below command.

    ssh-keygen -t rsa -C "your-email" 
    
    • Execute above command with your email address.
    • Set a new file path to prevent override existing file as: /home/rahul/.ssh/id_rsa_github_proj1
    • Press enter for passphrase and confirm passphrase to keep it empty
    • Your key is ready.

    Create SSH Key pair for Github

    The above command will create two file under ~/.ssh directory. Once is private key and one is public key.

    • Private key: ~/.ssh/id_rsa_github_proj1 (Never share this file with anyone)
    • Public key: ~/.ssh/id_rsa_github_proj1.pub (Upload this file to your Git account)

    Use the above command to create more SSH key pairs. Just remember to change the filename to prevent overwrite of file.

    Step 2 – Attach SSH keys to Git Accounts

    Now add the SSHs key to the corresponding GitHub, Gitlab, AWS Codecommit and other Git accounts. Copy the .pub file content and upload to Git accounts.

    • Github

      1. In the upper-right corner of any page, click your profile photo, then click Settings.
      2. In the user settings sidebar, click SSH and GPG keys.
      3. Click New SSH key or Add SSH key.
      4. In the “Title” field, add a descriptive label for the new key. For example, if you’re using a personal Mac, you might call this key “Personal MacBook Air”.
      5. Paste your key into the “Key” field.
      6. Click Add SSH key.
    • AWS CodeCommit

      1. Go to the my security credentials page
      2. On this page, open AWS CodeCommit credentials tab
      3. Under the SSH Keys section click Upload SSH public key button.
      4. Paste your key into the “Key” field.
      5. Click Upload SSH public key.
    • Step 3 – Create Git Config File

      Next, create a ssh configuration file for your user account. By default the user ssh configuration file exist under the .ssh directory in your home directory. Create and edit configuration file with the following file:

      nano ~/.ssh/config 
      

      Append below entries to this file.

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      Host github-proj1
        HostName github.com
        User git
        IdentityFile ~/.ssh/id_rsa_github_proj1
       
      Host github-proj2
        HostName github.com
        User git
        IdentityFile ~/.ssh/id_rsa_github_proj2
       
      Host aws-codecommit-proj3
        Hostname git-codecommit.us-east-2.amazonaws.com
        User TECADMIN0123456789
        IdentityFile ~/.ssh/id_rsa_aws_codecommit_proj3

      Save your file and close it. You have done with the required configuration of using multiple git accounts on a system.

      Step 4 – Let’s Start Your Work

      Your system is ready to use the multiple remote repositories from multiple accounts. You can connect your existing code with remote repository and push updates. For the new project, simply clone the repository on your machine and start your work.

      You need to change host in git url as defined in ~/.ssh/config file. See the below examples:

      For a New Repository

      Repository from first Github account:

      git clone ssh://github-proj1/user1/repo.git 
      

      Repository from second Github account:

      git clone ssh://github-proj2/user2/repo.git 
      

      Repository from AWS CodeCommit account:

      git clone ssh://aws-codecommit-proj3/v1/repos/myrepo 
      

      For an existing codebase

      For the existing codebase, your can use the following commands to connect your code with remote repository. Then add and commit files to the repository.

      cd my-code 
      git init 
      git remote add ssh://github-proj2/user2/repo.git 
      git add . 
      git commit -m "Initial commit" 
      git push origin master 
      

      Conclusion

      This tutorial helped you to configure multiple Git (Github, Gitlab, AWS Codecommit or Bitbucket etc) accounts on a single machine.

    account git github
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email WhatsApp

    Related Posts

    Getting Started with GitHub Actions

    Git Restore: Functionality and Practical Examples

    Git Switch: Functionality and Practical Examples

    Add A Comment

    Leave A Reply Cancel Reply

    Advertisement
    Recent Posts
    • Using .env File in FastAPI
    • Setting Up Email Notifications for Django Error Reporting
    • How to Enable Apache Rewrite (mod_rewrite) Module
    • What are Microservices?
    • Variable Expansion in ZSH
    Facebook X (Twitter) Instagram Pinterest
    © 2023 Tecadmin.net. All Rights Reserved | Terms  | Privacy Policy

    Type above and press Enter to search. Press Esc to cancel.