Skip to content

Open-Up/openup2018_01-01

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Git - Version control system

Who am i?

About Linagora

About Opensource

What is Git?

@author: Linus Torvalds

What is Version Control?

Your daily tasks

  • Create things
  • Save things
  • Edit things
  • Save the thing again?

So, we need a tool that tell us to know

  • What changed?
  • When changed?
  • Where changed?
  • Why changed?
  • Who changed?

Git features

  • Free and Opensource
  • Small and Fast
  • Distributed
  • Staging area
  • Branching and Merging
  • Data Assurance

Have a look

Ok, Practicing together

git init

man git-init

NAME
       git-init - Create an empty Git repository or reinitialize an existing one

git add

man git-add

NAME
       git-add - Add file contents to the index

git status

man git-status

NAME
       git-status - Show the working tree status

git commit

man git-commit

NAME
       git-commit - Record changes to the repository

A good commit message?

git log

man git-log

NAME
       git-log - Show commit logs

git branch

man git-branch

NAME
       git-branch - List, create, or delete branches

git merge

man git-merge

NAME
       git-merge - Join two or more development histories together

git rebase

man git-rebase

NAME
       git-rebase - Reapply commits on top of another base tip

git push

man git-push

NAME
       git-push - Update remote refs along with associated objects

git fetch

man git-fetch
NAME
       git-fetch - Download objects and refs from another repository

git pull

pull = fetch + merge

man git-pull

NAME
       git-pull - Fetch from and integrate with another repository or a local branch

git cherry

man git-cherry

NAME
       git-cherry - Find commits yet to be applied to upstream

git cherry-pick

man git-cherry-pick

NAME
       git-cherry-pick - Apply the changes introduced by some existing commits

git format-patch

man git-format-patch

NAME
       git-format-patch - Prepare patches for e-mail submission

git apply

man git-apply

NAME
       git-apply - Apply a patch to files and/or to the index

Github? How to contribute?

What are Github / Gitlab / Bitbucket / … ?

Exercise (How to contribute?)

  1. Create Github account (If you don’t have yet)
  2. Fork this repository (upstream)
  3. Clone your repository into your PC
  4. Add your information to CONTRIBUTORS.md look like
    Your name <[email protected]>                   github.com/your-account
        
  5. Create a good commit
  6. Push to your Github repository
  7. Create a pull request to upstream with a good reason