About adding existing projects to GitHub Enterprise Server
If you are migrating your project from CodePlex, read the migration guide for more information.
Tip: If you're most comfortable with a point-and-click user interface, try adding your project with GitHub Desktop. For more information, see "Adding a repository from your local computer to GitHub Desktop" in the GitHub Desktop Help.
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."
Adding a project to GitHub Enterprise Server with GitHub CLI
GitHub CLI is an open source tool for using GitHub from your computer's command line. GitHub CLI can simplify the process of adding an existing project to GitHub Enterprise Server using the command line. To learn more about GitHub CLI, see "About GitHub CLI."
-
In the command line, navigate to the root directory of your project.
-
Initialize the local directory as a Git repository.
git init -b main
-
To create a repository for your project on GitHub Enterprise Server, use the
gh repo create
subcommand. Replaceproject-name
with the desired name for your repository. If you want your project to belong to an organization instead of to your user account, specify the organization name and project name withorganization-name/project-name
.gh repo create project-name
-
Follow the interactive prompts. Alternatively, you can specify arguments to skip these prompts. For more information about possible arguments, see the GitHub CLI manual.
-
Pull changes from the new repository that you created. (If you created a
.gitignore
orLICENSE
file in the previous step, this will pull those changes to your local directory.)git pull --set-upstream origin main
-
Stage, commit, and push all of the files in your project.
git add . && git commit -m "initial commit" && git push
Adding a project to GitHub Enterprise Server without GitHub CLI
- Create a new repository on your GitHub Enterprise Server instance. To avoid errors, do not initialize the new repository with README, license, or
gitignore
files. You can add these files after your project has been pushed to GitHub Enterprise Server. - Open TerminalTerminalGit Bash.
- Change the current working directory to your local project.
- Initialize the local directory as a Git repository.
$ git init -b main
- Add the files in your new local repository. This stages them for the first commit.
$ git add . # Adds the files in the local repository and stages them for commit. To unstage a file, use 'git reset HEAD YOUR-FILE'.
- Commit the files that you've staged in your local repository.
$ git commit -m "First commit" # 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.
- At the top of your repository on your GitHub Enterprise Server instance's Quick Setup page, click to copy the remote repository URL.
- In Terminal, add the URL for the remote repository where your local repository will be pushed.
$ git remote add origin <REMOTE_URL> # Sets the new remote $ git remote -v # Verifies the new remote URL
- Push the changes in your local repository to your GitHub Enterprise Server instance.
$ git push -u origin main # Pushes the changes in your local repository up to the remote repository you specified as the origin
- Create a new repository on your GitHub Enterprise Server instance. To avoid errors, do not initialize the new repository with README, license, or
gitignore
files. You can add these files after your project has been pushed to GitHub Enterprise Server. - Open TerminalTerminalGit Bash.
- Change the current working directory to your local project.
- Initialize the local directory as a Git repository.
$ git init -b main
- Add the files in your new local repository. This stages them for the first commit.
$ git add . # Adds the files in the local repository and stages them for commit. To unstage a file, use 'git reset HEAD YOUR-FILE'.
- Commit the files that you've staged in your local repository.
$ git commit -m "First commit" # 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.
- At the top of your repository on your GitHub Enterprise Server instance's Quick Setup page, click to copy the remote repository URL.
- In the Command prompt, add the URL for the remote repository where your local repository will be pushed.
$ git remote add origin <REMOTE_URL> # Sets the new remote $ git remote -v # Verifies the new remote URL
- Push the changes in your local repository to your GitHub Enterprise Server instance.
$ git push origin main # Pushes the changes in your local repository up to the remote repository you specified as the origin
- Create a new repository on your GitHub Enterprise Server instance. To avoid errors, do not initialize the new repository with README, license, or
gitignore
files. You can add these files after your project has been pushed to GitHub Enterprise Server. - Open TerminalTerminalGit Bash.
- Change the current working directory to your local project.
- Initialize the local directory as a Git repository.
$ git init -b main
- Add the files in your new local repository. This stages them for the first commit.
$ git add . # Adds the files in the local repository and stages them for commit. To unstage a file, use 'git reset HEAD YOUR-FILE'.
- Commit the files that you've staged in your local repository.
$ git commit -m "First commit" # 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.
- At the top of your repository on your GitHub Enterprise Server instance's Quick Setup page, click to copy the remote repository URL.
- In Terminal, add the URL for the remote repository where your local repository will be pushed.
$ git remote add origin <REMOTE_URL> # Sets the new remote $ git remote -v # Verifies the new remote URL
- Push the changes in your local repository to your GitHub Enterprise Server instance.
$ git push origin main # Pushes the changes in your local repository up to the remote repository you specified as the origin