Definition

Nowadays Git is a standard option to host your code and share it among collaborators. Seems like the best way to introduce it is to show how to get a copy of some project on your hard drive for further scrutiny, development, tests, adjustments etc.

Documentation

The definitive guide how-to do this meta-task is at the official Git documentation site.

Prerequisites

Of cause you need git installed on your host.

git --version
git version 2.10.2

Cloning itself

Browse at Github

seeking something interesting to you and get the link for your particular repo like this:

https://github.com/0--key/org-pub.git

Open terminal tab

and type:

cd /usr/local/share/DVCS/ # it's path for all repositories on my hard drive
# git clone https://github.com/0--key/org-pub.git
# uncomment the string above for the actual git clone
ls org-pub
1
2016-08-24-index.org
2016-08-24-intro.org
2016-08-24-intro.org~
2016-08-25-how-to-evaluate.org
2016-08-26-disqus.org
2016-08-27-mark-up-samples.org
2016-08-27-python-and-sqlite3-interaction.org
2016-08-30-sqlite3-integrity-check.org
2016-08-31-sqlite3-data-types.org
2016-09-06-fork-git-repository.org
2016-09-06-fork-git-repository.org~
2016-09-06-how-to-clone-git-repo.org
2016-09-06-how-to-clone-git-repo.org~
2016-09-08-python-mock-object.org
2016-09-08-python-mock-object.org~
2016-09-09-python-standard-library.org
2016-09-09-python-standard-library.org~
2016-09-11-pytest.org
2016-09-11-pytest.org~
2016-09-13-python-built-in-functions.org
2016-09-13-python-built-in-functions.org~
2016-09-15-python-classmethod-and-staticmethod.org
2016-09-15-python-classmethod-and-staticmethod.org~
2016-10-13-CV.org
2016-10-13-emacs-pass-region-to-python-shell.org
2016-10-13-emacs-pass-region-to-python-shell.org~
2016-10-13-emacs-python-spynner-test.org
2016-10-13-emacs-python-spynner-test.org~
2016-10-15-javascript-inside-emacs.org
2016-10-15-javascript-inside-emacs.org~
data_types.db
img
LICENSE
README.md
README.md~
scripts
spynner
tests
test-sqlite.db

Seems like repository cloned into org-pub folder and all files are inside.

Check up remotes:

cd /usr/local/share/DVCS/org-pub/
git remote -v
origin https://github.com/0--key/org-pub.git (fetch)
origin https://github.com/0--key/org-pub.git (push)

Your local version should push and fetch code from a single remote.

Results

We got the local version of some interesting repository hosted on Git. It allows the arbitrary operations on a personal clone, and, if you're previously accepted as a collaborator, even to contribute to project.

It's a usual approach to share access as a collaborator to well-known persons. And it is a habitual treatment to organize software development among the team members - a team leader creates a repository on Github and grants access as a project collaborator to them. For security reasons all other persons aside from those, whom was formally invited by the project owner, has a restricted read-only access to the project's files by default.

But what about to obtain improvements and corrections from the completely unknown developers?

Conclusion

It's time to go further and cope with Git fork technology.



blog comments powered by Disqus

Published

06 September 2016

Categories

git literate programming

Tags