New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

git-new

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

git-new

Create a new GitHub repository

latest
Source
npmnpm
Version
1.3.0
Version published
Maintainers
1
Created
Source

Description

Creates a new GitHub repository only using terminal.

What's the purpose?

Easy way to create a new repository (personal/organization) on GitHub using only the terminal.

What does it do?

  • Creates a new local folder
  • Initialize a git repository (git init)
  • Creates a .gitignore file (optional)
  • Creates a LiCENSE file (optional)
  • Creates a README.md file (optional)
  • Creates a GitHub repository
  • Pushes first commit to the main branch

Installation

  npm install -g git-new

How to use?

On your terminal:

  git-new

  # or
  git-new <your_repo_name>

  # or
  git-new <your_repo_name> --private
  • Y/N questions, if no answer is given, the default value is True
  • All the white spaces in repo's name will be replaced with _ (e.g your_repo_name)

How to configure?

Single GitHub Account

  • If you only have one account, you will need:
    • Create a Personal Access Token
    • Add GitHub account and token to .gitconfig file

Multiple GitHub Accounts

  • To use with multiple GitHub accounts, you will need:
    • Create a new SSH key
      • Config GitHub to use the new SSH public key
      • Config ssh config file
    • Create a Personal Access Token
      • Add new GitHub account and token to .gitconfig file

Single GitHub Account Config

Personal Access Token

  • Create a GitHub personal access token

  • Add your GitHub account and token to your gitconfig file

      git config --global user.acc "your_github_acc"
      git config --global user.token "243f93cd40c14c9dd16e29bfff73b6aa5384285e"
    
    • In /Users/<your_username>/.gitconfig, you will have:

        [user]
            name = your_name
            email = your_email@gmail.com
            acc = your_github_acc
            token = 243f93cd40c14c9dd16e29bfff73b6aa5384285e
      

Multiple GitHub Accounts Config

Create New SSH Key

  • On Terminal generate a new SSH key

      ssh-keygen -t rsa -C "your_email@gmail.com"
      # Generating public/private rsa key pair.
      # Enter file in which to save the key (/Users/<your_username>/.ssh/id_rsa):
      /Users/<your_username>/.ssh/id_rsa_dev
      # Enter passphrase (empty for no passphrase):
      your_password
      # Enter same passphrase again:
      your_password
      # Your identification has been saved in /Users/<your_username>/.ssh/id_rsa_dev.
      # Your public key has been saved in /Users/<your_username>/.ssh/id_rsa_dev.pub.
      # The key fingerprint is:
      # SHA256:I60nfahisdhfiahsidfhiasdifhiashyH4 your_email@gmail.com
      # The key's randomart image is:
      # +---[RSA 3072]----+
      # |                 |
      # |                 |
      # |                .|
      # |       .       ..|
      # |      k S    oo1.|
      # |     o +..  .d%+=|
      # |. . . =.c+  .-+*.|
      # | p D =a*+.o  o...|
      # |...  +Ffff +*f   |
      # +----[SHA256]-----+
    
  • Add SSH key to your second GitHub account

    • Copy your new public SSH key (ends with .pub)

        cat /Users/<your_username>/.ssh/id_rsa_dev.pub
      
        # ssh-rsa AAAAB3Nzafskdlfajsdjflajsdlf ... /qUg/DM= your_email@gmail.com
      
    • On GitHub, go to Settings

    • Click on SSH and GPG keys > New SSH key

    • On SSH keys / Add new page

      • Title: add_a_title

      • Key: paste your public key

      • Click on Add SSH key

  • Add New SSH Private Key To List

    • Add the the new ssh key to your ssh list

        ssh-add /Users/<your_username>/.ssh/id_rsa_dev
      
        # Enter passphrase for /Users/<your_username>/.ssh/id_rsa_dev:
        your_password
      
        # Identity added: /Users/<your_username>/.ssh/id_rsa_dev (your_email@gmail.com)
      
  • Configure ssh config file

    • In /Users/<your_username>/.ssh/config (create a config if file doesn't exist)

    • Add a new Host and point to your private SSH key (without the .pub)

        Host your_unique_profile_name
          UseKeychain yes
          HostName github.com
          User your_new_github_user
          IdentityFile /Users/<your_username>/.ssh/id_rsa_dev
      

Configure GitHub

Add a second profile (user1) to your .gitconfig file

  • the user1 will the name of the profile

    • the name of the profile has to start with user and followed by an unique number (eg. user1, user2...)
  • Create a Personal Access Token

  • Add a new user to .gitconfig file

      git config --global user1.name "your_name"
      #                       ^
      #                       └── user1 (user One)
      git config --global user1.email "your_second_email@gmail.com"
      #                       ^
      #                       └── user1 (user One)
      git config --global user1.acc "your_second_github_acc"
      #                       ^
      #                       └── user1 (user One)
      git config --global user1.token "243f93cd40c14c9dd16e29bfff73b6aa5384285e"
      #                       ^
      #                       └── user1 (user One)
    

In your /Users/<your_username>/.gitconfig:

  [user] # <-------- Default profile
      name = your_name
      email = your_email@gmail.com
      acc = your_github_acc
      token = 243f93cd40c14c9dd16e29bfff73b6aa5384285e
  [user1] # <-------- New profile
      name = your_name
      email = your_second_email@gmail.com
      acc = your_second_github_acc
      token = 243f93cd40c14c9dd16e29bfff73b6aa5384285e

Keywords

create

FAQs

Package last updated on 06 Feb 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts