User Tools

Site Tools


version_control:git_basics

This is an old revision of the document!


Git Basics

Clarification

Basic operations

  • Create a git repository in the current directory:
    git init
  • Create a new directory with a git repository in it:
    git init directory-name
  • Stage a changed file or a new file for the next commit:
    git add filename
  • Stage all changed and new files for the next commit:
    git add .
  • Unstage a file you have staged for the next commit:
    git rm --cached filename
  • Commit the staged files:
    git commit -m "A message about this commit."
  • Get status of repository:
    git status
  • Get history of repository:
    git log
  • Delete a file:
    git rm filename
  • Rename or move a file:
    git mv source destination

Use the git rm command to delete files instead of the Windows Explorer, the Finder in macOS, your Linux file manager, or other shell commands to delete and move/rename files in a repository. Doing so will simplify staging.

Branching and merging

  • A git repository has a default branch called master.
  • To create a new branch:
    git branch branch-name
  • Switch to an existing branch:
    git checkout branch-name
  • Create a new branch and immediately switch to it:
    git checkout -b branch-name
  • Merge changes in another branch into the current branch:
    git merge branch-name
  • Delete a branch that you're not currently in:
    git branch -d branch-name

Ignoring files

  • To make git ignore some files in your project, create a .gitignore file in the project directory.
    .gitignore
    # Ignore specific files
    nastyfile.txt
    another-nastyfile.docx
     
    # Ignore compiled file(s)
    *.exe
    *.o
     
    # Ignore all files in directory foo
    foo/*

The file name must be .gitignore, not .gitignore.txt or gitignore.txt. To create a .gitignore file in Windows, open the Bash shell in the directory where you want the file and enter:

touch .gitignore

GUI interface

  • git gui: opens a GUI for performing common git functions.
  • gitk: opens a GUI commit browsing tool.
  • Lots of other third party Git tools are available.

More git stuff

version_control/git_basics.1601074305.txt.gz · Last modified: 2020/09/25 22:51 by mithat

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki