zoukankan      html  css  js  c++  java
  • Git简介及安装配置

    Git内部有三种状态:已提交、已修改、已暂存(已修改的文件放在下次提交时要保存的清单)

    每个项目都有一个git 目录,它是Git 用来保存元数据和对象数据库的地方。该目录非常重要,每次克隆镜像仓库的时候,实际拷贝的就是这个目录里面的数据。

    • /etc/gitconfig文件:系统中对所有用户都普遍适用的配置。若使用git config 时
    用--system 选项,读写的就是这个文件。
    • ~/.gitconfig文件:用户目录下的配置文件只适用于该用户。若使用git config 时
    用--global 选项,读写的就是这个文件。
    • 当前项目的git 目录中的配置文件(也就是工作目录中的.git/config 文件):这
    里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以
    .git/config 里的配置会覆盖/etc/gitconfig 中的同名变量。

    $ git config --global user.name "John Doe"
    $ git config --global user.email johndoe@example.com

    $git init 初始化项目

    $git add 添加追踪文件、以追踪但又被更新的文件重新追踪,否则提交的只是更新之前的内容

    $git status 查看状态

    $git rm --cached 移除追踪但不删除文件

    $git checkout 对已经追踪但又被更新的文件撤销更新

    $git diff 当前工作目录的文件和已暂存的文件之间的差异

    $git diff --cached 或者$git diff --staged 查看已暂存的和上次提交的快照之间的差异

    $git commit -m 提交并写入提交说明

    $git commit --amend 重新提交刚才的提交

    $git commit -a 自动把追踪的所有文件暂存并提交

    $git log 查看提交历史

    -p 显示每次提交的差异

    -2 最后两次提交

    --stat 增改行数统计

    --pretty 选项,可以指定使用完全不同于默认格式的方式展示提交历史

    --pretty=oneline 一行显示一次提交

    git reset HEAD <file>... 的方式取消暂存

    git remote 命令,它会列出每个远程库的简短名字。在克隆完某个项目后,至少可以看到一个名为origin 的远程库,Git 默认使用这个
    名字来标识你所克隆的原始仓库,也可以加上-v 选项(译注:此为—verbose 的简写,取首字母),显示对应的克隆地址

    git fetch origin 会抓取从你上次克隆以来别人上传到此远程仓库中的所有更新(或是上次fetch 以来别人提交的更新)。有一点很重要,需要记住,fetch 命令只是将远端的数据拉到本地仓库,并不自动合并到当前工作分支,只有当你确实准备好了,才能手工合并。。

    如果设置了某个分支用于跟踪某个远端仓库的分支(参见下节及第三章的内容),可以使用git pull 命令自动抓取数据下来,然后将远端分支自动合并到本地仓库中当前分支

    默认情况下git clone 命令本质上就是自动创建了本地的master 分支用于跟踪远程仓库中的master 分支(假设远程仓库确实有master 分支)。所以一般我们运行git pull,目的都是要从原始克隆的远端仓库中抓取数据后,合并到工作目录中当前分支。

    $ git branch testing 新建一个分支

    $ git checkout testing 这样HEAD 就指向了testing 分支

    要新建并切换到该分支,运行git checkout 并加上-b 参数:$ git checkout -b iss53

    Create a new repository on the command line

    touch README.md
    git init
    git add README.md
    git commit -m "first commit"
    git remote add origin git@github.com:beyondlqh/ss.git
    git push -u origin master

    Push an existing repository from the command line

    git remote add origin git@github.com:beyondlqh/ss.git
    git push -u origin master


    当你把自己的公钥通过github的账户添加ssh key的时候,你的linux机器就可以ssh登陆git@github.com服务器 ssh -T git@github.com测试,这样你才能用ssh的方式去github上clone源码,通过https协议可以绕过这一限制。

    分支:

    git checkout -b [分支名] [远程名]/[分支名] 创建一个跟踪分支,跟踪远程分支。

    $ git checkout --track origin/serverfix 同上,只不过是创建同名追踪分支

    git push的时候加上-u参数会在config文件中追加跟踪分支的映射关系,这样git pull的时候就不用指定origin 和 branch,直接git pull即可。

  • 相关阅读:
    实现IEnumberable接口和IEnumberator
    XAML-1
    Java基础00-Java概述1
    详解Lombok中的@Builder用法
    stream之map的用法
    stream之forEach的用法
    Java中map.getOrDefault()方法的使用
    BiPredicate的test()方法
    Function.identity()
    java 8 lamda Stream的Collectors.toMap 参数
  • 原文地址:https://www.cnblogs.com/waxili/p/3488516.html
Copyright © 2011-2022 走看看