• GIT常用命令


    GIT的官方文档       图形化工具gitk

    1、GIT基础设定
    $ git config --global user.name "Your Name"
    $ git config --global user.email "email@example.com"
    $ git config --list          查看配置记录
    也可以进入工作根目录,运行git config -e,这样就只会对该工作区有效。

    2、常用命令
    git init             本地创建版本库
    git add "test.txt"   添加指定文件到版本库中

    git add .            添加所有文件到版本库中
    git clean -f                       清除Untracked files
    git commit -m "wrote a test file"           将修改的文件提交到仓库,-m参数用于设置此次提交的注释内容
    git commit -a -m "wrote a test file"     如果有多个文件需要提交,则必须使用-a参数

    git status           查看仓库的当前状态,显示那些文件已修改,那些文件需要提交

    git log              查看版本提交记录   其他参数
    git log --stat       查看提交记录简要的增改行数统计
    git log --pretty=oneline      只显示提交记录的commit id(版本号)和注释内容
    git log --pretty=oneline --abbrev-commit

    git reset --hard HEAD^        把当前版本回退到上一个版本
    git reset --hard HEAD~100    
    git reset --hard commit_id    回退到指定的版本号

    git reflog                    查看命令执行记录
    git diff HEAD -- 文件名        查看工作区和版本库里面最新版本的区别

    git checkout -- readme.txt    把文件在工作区的修改全部撤销,回退到版本库或暂存区的最新版本
    git reset HEAD readme.txt     把暂存区的修改回退到工作区

    git rm readme.txt               从版本库删除文件
    git show 某次的提交哈希值  文件名       查看某个文件某次的修改记录

    git remote add origin git@github.com:username/learngit.git              将本地git库与远程库关联,origin是远程库的名称(可以任意定义)

    git push -u origin master       把本地库中master分支的所有内容推送到远程库,-u参数是將本地库与远程库关联,平时提交不需要该参数

    ssh-keygen -t rsa -C "youremail@example.com"          创建SSH KEY,每个客户端创建一个KEY,提交时github可以准确识别出提交者


    历史查看

    查看提交历史(全部):                                 $ git log
    查看提交历史,并显示统计信息:              $ git log --stat
    查看提交历史并查看差异:                          $ git log -p
    查看最近2次提交历史并查看差异:            $ git log -p -2
    查看最近2周内提交历史:                            $ git log --since=2.weeks
    查看某个时刻之后的提交历史:                  $ git log --since="2008-09-14"
    查看某个时刻以前的提交历史:                  $ git log --until="2008-09-14"
    查看某个作者的提交历史:                          $ git log --author="stupid"

    查看提交历史,并单行显示:                        $ git log --pretty=oneline

    查看提交历史,并格式化显示:                      $ git log --pretty=format:"%h - %an, %ar : %s"

    %H 提交对象(commit)的完整哈希字串
    %h 提交对象的简短哈希字串
    %T 树对象(tree)的完整哈希字串
    %t 树对象的简短哈希字串
    %P 父对象(parent)的完整哈希字串
    %p 父对象的简短哈希字串
    %an 作者(author)的名字

    %ar 作者修订日期,按多久以前的方式显示
    %cn 提交者(committer)的名字
    %cr 提交日期,按多久以前的方式显示
    %s 提交说明

    【日志参数】

    -p 按补丁格式显示每个更新之间的差异。
    --stat 显示每次更新的文件修改统计信息。
    --shortstat 只显示 --stat 中最后的行数修改添加移除统计。
    --name-only 仅在提交信息后显示已修改的文件清单。
    --name-status 显示新增、修改、删除的文件清单。
    --abbrev-commit 仅显示 SHA-1 的前几个字符,而非所有的 40 个字符。
    --relative-date 使用较短的相对时间显示(比如,“2 weeks ago”)。
    --graph 显示 ASCII 图形表示的分支合并历史。
    --pretty 使用其他格式显示历史提交信息。可用的选项包括 oneline,short,full,fuller 和 format(后跟指定格式)。


    分支
    git checkout -b dev           创建并切换到dev分支
    git checkout master           切换到master分支
    git branch                    查看当前所有的分支,当前分支前面会标一个*号
    git branch dev                创建dev分支
    git merge dev                                          合并dev分支到master主分支
    git merge --no-ff -m "注释内容" dev            合并dev分支时生成一个新的commit,从分支历史上就可以看出分支信息。
    注意上面的--no-ff参数,表示禁用“Fast forward”
     
    git branch -d dev             删除dev分支


    标签
    git tag v1.0                  切换到需要打标签的分支上,创建v1.0标签

    git tag                       查看所有标签
    git tag v0.9  commit_id       在知道版本号打标签
    git show v0.9                 查看标签信息
    git tag -a v0.1 -m "version 0.1 released" commit_id     用-a指定标签名,-m指定说明文字
    git tag -d v0.1               删除标签
    git push origin v1.0          推送标签到远程库
    git push origin --tags        一次性推送全部尚未推送到远程的本地标签


    删除本地未提交的修改

    已提交到暂存区:

    git reset --hard         取消缓存已缓存的内容

    git clean -xdf           从磁盘上删除所有未提交到暂存区的文件


    未提交到暂存区:

    git checkout .           撤销所有工作区文件的修改
    git checkout filename    撤销指定工作区文件的修改

    git checkout *.java      撤销工作区所有java文件的修改
    git clean -xdf

    文件回退到指定版本

    git log 文件名 查看文件的修改记录

    git reset 版本hash 文件名 将该文件回退到指定版本,此时git status -s 查看状态为MM,该命令只有在干净的工作区才有效

    git checkout filename 撤销该文件的修改,此时文件状态为M

    git reset -- filepath 对某个文件执行撤销操作

     

    [远程操作]

     

    显示配置了哪些远程服务器: $ git remote

    显示配置了哪些远程服务器,同时显示URL$ git remote -v

    显示远程 详细信息: $git remote show origin

    修改远程标识名字: $git remote rename origin paul

    删除远程配置: $git remote rm paul

    增加一个远程配置: $git remote add origin git://github.com/paulboone/ticgit.git

  • 相关阅读:
    Eclipse编译 make: arm-linux-gcc:命令未找到
    ubuntu如何启用root帐号
    jlinkV8指示灯不亮 usb无法识别的问题。
    Normal Equation Algorithm求解多元线性回归的Octave仿真
    Normal Equation Algorithm
    一维高斯分布与多维高斯分布
    Locally weighted regression algorithm
    Linear Regression and Gradient Descent
    导数与偏导数 Derivative and Partial Derivative
    向量的内积、长度和正交性
  • 原文地址:https://www.cnblogs.com/xyd21c/p/3962740.html
Copyright © 2020-2023  润新知