# Maintaining your own repository of components in GitHub We recommend that you create a repository for your own components (i.e. *mycomponents* directory in the example below) in your GitHub account (or other similar site) and pull/clone it in *~/robocomp/components* whenever yo need it. This tutorial complements [Creating my First Component using robocompdsl](robocompdsl.md). ## Creating the repository For example, if your GitHub account is *myaccount*, first log in with your browser and create a new repository named *mycomponents*. If you need help you can follow these instructions: https://help.github.com/articles/create-a-repo/ We suggest that you write down a short description of what your component does in the `README.md` file. # Cleaning the generated folder from the Robocomp DSL Cleaning up the binary and generated files in *myfirstcomp* is important. Note that this is not necessary if you upload the component to the repo just after creating it with DSLEditor and before you type *cmake .*. Following are example commands for doing it: ```bash cd ~/robocomp/components/mycomponents/myfirstcomp make clean sudo rm -r CMakeFiles rm CMakeCache.txt rm cmake_install.cmake rm Makefile rm *.kd* rm src/moc* sudo rm -r src/CMakeFiles rm src/cmake_install.cmake rm src/Makefile ``` Now add your new `mycomponents` folder to your GitHub account: ```bash cd ~/robocomp/components/mycomponents git init git remote add origin "https://github.com/myaccount/mycomponents.git" git add mycomponents git push -u origin master ``` You can go now to GitHub and make changes to your repository directly from your browser. As well as share your components with other RoboComp enthusiasts!