# Creating and Cloning a Repository
## Setting up a new repository
Lets look at how you can set up a new remote repository on Gitlab/Github, so you are ready to start committing your code. the easist way is to create a new repository in Gitlab/Github, clone it locally then start adding your files to it. We'll look at this method first.
Using Gitlab
#### Gitlab
- Open Gitlab in your browser and log in
- Now click **new project** on the right hand side of the interface

- You'll now be asked what template do you want to use, I recommend a blank project unless your use case fits with the other options

- Now it's time to give your project a name. You can also set if the project is public or private at this time (although this can be changed later)

- Once done click **create project** at the bottom of the page
- You'll be taken to the next page which shows you a bare bones repository. (It should have a README.md file if you didn't change the setting to create one)

#### Get the project URL
- The next step is to get the URL for the git repository you want to clone. You can do this by going to the green **code** button and clicking it.
- If you intend to commit code back select the SSH URL.

> If you want to just pull the code down to use locally you can use HTTPS, this is especially useful if you don't have permissions on the repository.
### Clone the new repository
```bash
git clone git@gitlab.com:ric_harvey/demo-project.git
```
### Adding existing files to a git repository
```bash
cd existing_repo
git remote add origin https://gitlab.com/ric_harvey/demo-project.git
git branch -M main
git push -uf origin main
```
## Cloning an existing repository
---
##### Follow me for more guides
[
](https://awscommunity.social/@Ric) [
](https://www.linkedin.com/in/richarvey/)