git日常使用命令

作者: 肖金光xjg | 来源:发表于2017-05-31 15:53 被阅读58次

    git 初始化

    配置个人信息

    首先,你需要执行下面两条命令,作为git的基础配置,作用是告诉git你是谁,你输入的信息将出现在你创建的提交中.

    git config --global user.name "你的名字或昵称"
    git config --global user.email "你的邮箱"

    初始化工作树

    然后在你的需要初始化版本库的文件夹中执行

    cd $WORK
    git init
    git remote add origin <你的项目地址> //注:项目地址形式为:http://git.oschina.net/xxx/xxx.git或者 git@git.oschina.net:xxx/xxx.git
    上述操作的结果是在 $WORK 目录下创建了一个 .git 隐藏目录,它就是所谓的 Git 仓库,不过现在它还是空的。另外 $WORK 目录也不再是普通的文档目录了,今后我们将其称为工作树。

    克隆一个项目

    git clone <项目地址>

    项目管理

    生成临时快照 git add

    若将工作树下所有文档 (包含子目录)生成快照,可采用以下命令:

    cd $WORK
    git add .

    指定部分如: git add <文件>,git add <文件夹>
    所生成的快照被存放到一个临时的存储区域,Git 称该区域为索引。add几个参数说明:

    • git add -A 保存所有的修改
    • git add . 保存新的添加和修改,但是不包括删除
    • git add -u 保存修改和删除,但是不包括新建文件。

    提交到本地仓库 git commit

    使用git-commit命令可将索引提交至仓库中,这个过程称为提交,每一次提交都意味着版本在进行一次更新。最简单的用法如下:

    git commit -m "你的版本更新信息"

    如对项目有做删除文件或文件夹的操作,需要用-a参数提交

    git commit -am "你的版本更新信息"

    提交到远程服务器git push

    项目的管理流程 init --> add --> commit --> push;

    更新本地工作树git pull

    git文档忽略机制.gitignore

    其中的 zh 目录存放着 TEX 文档编译时生成的中间文件,因此该目录不应该被Git 所管理。Git 提供了文档忽略机制,可以将工作树中你不希望接受 Git 管理的文档信息写到同一目录下的.gitignore文件中.

    cd $WORK
    echo "zh" > .gitignore
    git add .

    有关 gitignore 文件的诸多细节知识可阅读其使用手册:

    man gitignore

    查看版本历史

    git log

    想看一下每一次版本的大致变动情况,可使用以下命令:

    git log --stat --summary

    可查看该次项目版本的更新细节

    git show da4b9ce37531bbb43d8187d7a651e228e26f1212

    除了使用完整的版本号查看项目版本更新细节之外,也还可以使用以下方式:

    git show da4b # 一般只使用版本号的前几个字符即可
    git show HEAD # 显示当前分支的最新版本的更新细节

    每一个项目版本号通常都对应存在一个父版本号,也就是项目的前一次版本状态。可使用如下命令查看当前项目版本的父版本更新细节:

    git show HEAD^ # 查看 HEAD 的父版本更新细节
    git show HEAD^^ # 查看 HEAD 的祖父版本更新细节
    git show HEAD~4 # 查看 HEAD 的祖父之祖父的版本更新细节

    可以对项目版本号进行自定义(添加tag),然后就可以使用自定义的版本号查看对应的项目版本更新细节:

    git tag v0.1 dfb02
    git show

    查看所有tag及注释

    git tag -l -n

    撤销和恢复

    git reset

    git-reset 命令有三个选项:--mixed 、 --soft 和 --hard 。我们在日常使用中仅使用前两个选项;第三个选项由于杀伤力太大,容易损坏项目仓库,需谨慎使用。

    • --mixed 是 git-reset 的默认选项,它的作用是重置索引内容,将其定位到指定的项目版本,而不改变你的工作树中的所有内容,只是提示你有哪些文件还未更新。
    • --soft 选项既不触动索引的位置,也不改变工作树中的任何内容,但是会要求它们处于一个良好的次序之内。该选项会保留你在工作树中的所有更新并使之处于待提交状态。

    分支版本切换 git checkout branch_name

    git 帮助文档man,help

    man git reset
    git reset --help

    相关文章

      网友评论

        本文标题:git日常使用命令

        本文链接:https://www.haomeiwen.com/subject/jyljfxtx.html