zoukankan      html  css  js  c++  java
  • Git使用总结

    一、Git的特性

    Speed 速度(git是用c语言写的。一般都是提交到本地)Simple designStrong support for non-linear development (thousands of parallel branches)(强有力的支持非线性开发) Fully distributed(分布式)Able to handle large projects like the Linux kernel efficiently (speed and data size)

    二、Git的架构原理

    1.快照和索引而不是增量,svn是增量

    2.几乎所有的操作都是本地的

    3.Git文件的三个状态

    Committed :文件安全的存储在你的本地. Modified :你修改了文件,但还未提交到你的仓库. Staged : 已经标记了一个已修改文件到下一个版本的快照相应流程如下:(1),工作区修改文件(2),adding 快照到stage区域(3),commit 提交到仓库

    4.文件状态生命周期

    三、安装Git及使用前的准备

    1.安装,直接上官网下载安装

    2.安装完成之后查看系统环境变量,设置身份

    (1),了解系统环境变量/etc/gitconfig.gitconfig (2),设置身份$ git config --global user.name "John Doe"$ git config --global user.email johndoe@example.com(3),设置编辑器(可选)$ git config --global core.editor emacs(4),设置你的比较工具(可选)$ git config --global merge.tool vimdiff(5),检查你的配置(可选)$ git config --list(6),帮助$ git help $ git --help

    3.开发前需理解的四个区域

    blessed (remote) repository 远程仓库local repository 本地仓库stage area 临时区work area 工作区

    四、Git相关命令

    基本命令

    1.初始化 

    (1)init 进入工作区间文件夹,git init

    (2)clone 从远程服务器调用git clone git://github.com/wsj/test.git

    2.由工作区workspace加入到临时区staged,add命令

    git add *.javagit add wsj.txt

    3.由临时区staged提交到本地仓库local repository

    git commit  -m "log"

    4.查看提交状态

    git status

    5.忽略文件或文件夹

    新建.gitignore文件,写入要忽略的文件名即可

    6.查看三个区域文件的区别

    $git diff --staged : workspace VS staged  .$git diff --cached :staged  VS local repo

    7.回滚 reset

    git reset 三种模式git reset --mixed 保留工作区源码,临时区和本地仓库回滚git reset --soft  保留工作区和临时区源码,本地仓库回滚git reset --hard 工作区,临时区,本地仓库都回滚git reset --hard HEAD^ 回滚所有内容到上一个版本,后边可加上文件名git reset --hard HEAD~3回滚到上3个版本git reset --hard  origin/master 回滚到和远程仓库一致

    8.删除移动 rm mv

    删除但未提交到本地仓库,这时如果想找回文件,使用git checkout filename

    共享及更新项目

    1.从远程仓库中更新 fetch pull

    git fetch origin 相当于是从远程获取最新版本到本地,不会自动mergegit pull origin 相当于是从远程获取最新版本并merge到本地

    2.提交到远程仓库

    git push origin master

    3.远程仓库 remote

    列出远程仓库git remotegit remote -v 显示远程地址//添加远程仓库git remote add pb git://github.com/sundyhome/ticgit.gitgit remote rename pb paulgit remote rm paulgit remote show origin

    观察比较 log diff

    查找tag对应的commit id git log --oneline --decorate

    分支管理及合并

    1.分支branch

    git branch branchname创建分支查看git branch 列出分支git show-branch 列出分支,并列出差异git diff branch1 branch2git whatchanged

    2.切换分支checkout

    3.分支合并merge

    git merge "merge branch1 to master" HEAD branch1

    另一种做法git checkout mastergit pull . branch1

    4.版本tag

    git tag -a ver1.0 -m "my version 1.0"//show ver1.0 命令查看相应标签的版本信息,并连同显示打标签时的提交对象。git show ver1.0//switch ver1.0git checkout ver1.0

  • 相关阅读:
    基站选址(编程之美2015资格赛)
    2月29日(编程之美2015资格赛)
    跳马
    电子老鼠闯迷宫
    解决按钮重复提交 unbind+bind+setTimeout
    XMLHttpRequest 中 blob类型数据转text
    ExtJs之列表(grid)
    ExtJs之组件(window)
    ExtJs基础
    问题与成长
  • 原文地址:https://www.cnblogs.com/qinyunpanchenxi/p/4454396.html
Copyright © 2011-2022 走看看