python_introduction/learning_git.md

107 lines
2.9 KiB
Markdown

# Git
Git is a Version Control System.
It is an advanced open source project.
That is the most popular VCS with his advantage like security, efficiency, speed etc.
He was developed in 2005 by Linus Torvalds, the Linux's father.
Many companies projects using Git (Google, Gnome, Netflix, etc).
In 2016 12 million people were using Git.
All project histories were saved in the work file.
You can publish, with all histories, projects in a Git platform like Gitea, GitHub, Bitbucket, GitLab, etc.
With this tool, you can commit projects, compare projects.
That is the best tool for teamwork.
## Git in Pycharm
### Starting a version controlled project
In Pycharm, you have to enable a version control integration.
There are many choices, but we will use Git.
As you can see, Git appears in the toolbar and a git window appear bottom of the window.
And you can identify the current branch that you are in.
So the default branch name is **master**.
![screenhot](assets/git_pycharm_source_00.png)
![screenhot](assets/git_pycharm_source_01.png)
![screenhot](assets/git_pycharm_source_02.png)
Let's try to write some code
And add all contents that we write in a git repository.
![screenhot](assets/git_pycharm_source_03.png)
In the commit window, we can see file project.
But we had three important things.
We have a textBox and two buttons.
In the textBox, you can write a comment when you commit.
The _Commit_ button is used to save all change in your project.
The _Commit and Push_ is used to commit and push the project in a Git.
![screenhot](assets/git_pycharm_source_04.png)
When you press the _Commit and Push_, a new window appears.
You can see which branch and which commit that you push.
![screenhot](assets/git_pycharm_source_05.png)
![screenhot](assets/git_pycharm_source_06.png)
![screenhot](assets/git_pycharm_source_07.png)
![screenhot](assets/git_pycharm_source_08.png)
![screenhot](assets/git_pycharm_source_09.png)
![screenhot](assets/git_pycharm_source_10.png)
![screenhot](assets/git_pycharm_source_11.png)
### Creating an online repository
![screenhot](assets/git_pycharm_source_12.png)
![screenhot](assets/git_pycharm_source_13.png)
![screenhot](assets/git_pycharm_source_14.png)
<!---
![screenhot](assets/git_pycharm_source_15.png)
-->
### Cloning the remote project into a new project
![screenhot](assets/git_pycharm_clone_00.png)
![screenhot](assets/git_pycharm_clone_01.png)
![screenhot](assets/git_pycharm_clone_02.png)
![screenhot](assets/git_pycharm_clone_03.png)
![screenhot](assets/git_pycharm_clone_04.png)
![screenhot](assets/git_pycharm_clone_05.png)
![screenhot](assets/git_pycharm_clone_06.png)
<!---
![screenhot](assets/git_pycharm_source_16.png)
![screenhot](assets/git_pycharm_source_17.png)
-->
### Updating the original project
![screenhot](assets/git_pycharm_source_18.png)
![screenhot](assets/git_pycharm_source_19.png)
![screenhot](assets/git_pycharm_source_20.png)