Adding a file to a repository using the command line

You can upload an existing file to a GitHub repository using the command line.

This procedure assumes you've already:

Warning: Never git add, commit, or push sensitive information to a remote repository. Sensitive information can include, but is not limited to:

  • Passwords
  • SSH keys
  • AWS access keys
  • API keys
  • Credit card numbers
  • PIN numbers

For more information, see "Removing sensitive data from a repository."

  1. On your computer, move the file you'd like to upload to GitHub into the local directory that was created when you cloned the repository.
  2. Open TerminalTerminalGit Bash.
  3. Change the current working directory to your local repository.
  4. Stage the file for commit to your local repository.
    $ git add .
    # Adds the file to your local repository and stages it for commit. To unstage a file, use 'git reset HEAD YOUR-FILE'.
  5. Commit the file that you've staged in your local repository.
    $ git commit -m "Add existing file"
    # Commits the tracked changes and prepares them to be pushed to a remote repository. To remove this commit and modify the file, use 'git reset --soft HEAD~1' and commit and add the file again.
  6. Push the changes in your local repository to GitHub.
    $ git push origin your-branch
    # Pushes the changes in your local repository up to the remote repository you specified as the origin

Further reading

Did this doc help you?Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

Or, learn how to contribute.