Git学习笔记

init

创建仓库

$ git init

add

将文件添加到缓存区

$ git add fie_name #添加单个文件
$ git add . #当前目录下的所有文件

commmit

提交到本地仓库

$ git commit -m "本次提交的说明"

remote

  1. 添加远程仓库地址
$ git remote add origin url
  1. 删除远程地址
$ git remote rm origin #删除本地现存的远程地址
  1. 删远程分支

    $ git push origin :master #删除master
    $ git push origin :dev #删除dev
    
  2. 更新远程仓库地址

    # 方法一
    git remote set-url origin url
    # 方法二
    git remote rm origin
    git remote add origin url
    

push

推送

$ git push #默认推送本地master分支至远程master分支
$ git push origin dev:dev #默认推送本地dev分支至远程dev分支

clone

下载远程仓库到本地

$ git clone url

pull

把最新的代码拉取下来

fetch

将远程库的数据下载到本地库,但是工作区中的文件没有更新

$ git fetch

status

查看项目当前状态

$ git status -s

diff

查看修改的内容

$ git diff file_name #fiel_name为要查看的文件名

log

查看历史记录

$ git log
$ git log --pretty=oneline # 按照指定的格式输出

reset

回退版本

$ git reset --hard xxx #版本的id
$ git reset --hard HEAD~n #回退到上n版本

reflog

记录你每一次的操作命令

$ git reflog 

丢弃工作区的修改

$ git checkout --file

rm

从版本库中删除

$ git rm file_name

reset

取消缓存

$ git reset HEAD #HEAD为ID

rebase

整合分叉的历史,可以将某个分支上的所有修改都移到另一分支上,就像是变了基底。

$ git rebase

mv

移动或重命名

$ git mv

branch

  1. 查看所有分支
$ git branch -all
  1. 创建分支
$ git branch dev
#这个时候dev是一个本地分支,远程仓库不知道它的存在
# 本地分支可以不同步到远程仓库,我们可以在dev开发,然后merge到master,使用master同步代码,当然也可以同步
  1. 切换分支
$ git checkout dev  #切换到dev分支进行开发
  1. 合并分支
$ git merge dev
  1. 删除本地分支
$ git branch -D dev #dev分支被删除

help

帮助文档

$ git help