---
# System prepended metadata

title: '**git Syntax**'

---

# **git Syntax**

## ==git== General
    git --version                         //log out version of git
    
    git log                               //log out information
        log --oneline                     //log out information in oneline
        
    git reflog                            //log out HEAD footstep
    
    git config --list                     //status of config
    git config --global user.name "name"  //set up username in global scope
        config --global user.email "email"//set up email in global scope
        config --local user.name "name"   //set up username in local scope
        config --local user.email "email" //set up email in local scope
        
    rm                                    //remove
    rm -f                                 //force remove
       -r                                 //remove all dir under
       -rf                                //force to remove all dir under
      
    git init                              //intial git to folders
    git status                            //check git status (untrack, tracked)
    
    git blame filename                    //log all line information
    
    git reset name                        //reset to somewhere, default mixed, 
        reset name --mixed                //drop to working directory
        reset name --soft                 //drop to staging area
        reset name --hard                 //delete drop
    git reset HEAD^                       //rerurn last step
        reset HEAD^^                      //return last two step
        reset HEAD~50                     //return 50 step back
        
    ^ = -1 = Caret
    ~ = -n = Tilde
    

###### Working Directory
    git add                               //add untrack files to tracked
        add .                             //. = here
        add --all                         //add all
        add -A                            //add all
        
    git restore                           //give up the change in working directory
        restore .                         //restore . = here
    

###### Staging Area

    git commit                            //commit tracked files to Repository
        commit --message "message"
        commit -m        "message"
                  
                     ex. "WIP - member system" (work in progess)
                         "#23 bug fixed"
                  
###### Repository
    git push                              //push online
    git pull                              //pull down
 
## git Branch
    
    git branch                            //search branch
        branch branchname id              //create new branch
        branch -d branchname              //delete branchname
        branch -D branchname              //force delete branchname
        
    git checkout                          //switch branch or restore files
    git switch branchname                 //switch branch
        switch commitname --detach        //switch to commit name
        
    git merge branchname                  //(self) merge branchname
        merge branchname --no-ff          //(self) merge with no fastforward
        merge branchname -m "message"     //(self) merge with message
        
    git rebase branchname                 //(self) rebase to the base of commit 
    git reset ORIG_HEAD                   //easy way to be back before rebase 

## git Branch Conflict
```
merge -> fix the conflict -> add -> commit
rebase -> fix the conflict -> add ->
> git rebase --continue                 //accect the fixed
> git rebase --skip                     //skip conflict
> git rebase --abort                    //abort the fixed

git chechout img.jpg --ours            //use (self) img
git checkout img.jpg --theirs          //use (Branch been merge's) img
```
        
## Other tips
    control + l                           //clear console
            + w                           //del word
            + u                           //del line
            + r                           //history search