• git 使用教程


    一、简介

    Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

    Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

    Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

    二、windows安装

    下载exe文件,均选择默认安装即可。

    三、第一次使用git

    设置全局用户

    $git config --global user.name username
    $git config --global user.email useremail

    相关帮助

    $git help <verb>
    $git <verb> --help
    $man git-<verb>

    创建本地仓库

    git init repo # repo:仓库

    本地操作

    $ git add *.c                      # 将.c文件添加到staged(暂存区)
    $ git add README                   # 将README文件添加到staged
    $ git commit -m '初始化项目版本'     # 提交修改到本地仓库

    克隆远程仓库

    git clone <repo> <directory>     directory 本地目录
    ex:git clone git@github.com:oneInsect/HelloWorld.git /home/repo

    常用命令

    git status
    用于查看上次提交之后是否有修改
    git diff
    用于显示已提交与未提交的区别
    git reset HEAD
    用于回溯上一个版本
    git rm
    用于移除本地仓库文件,如果把文件从暂存区域移除,但仍然希望保留在当前工作目录中,
    换句话说,仅是从跟踪清单中删除,使用
    --cached 选项即可

    四、分支管理

    有人把 Git 的分支模型称为"必杀技特性",而正是因为它,将 Git 从版本控制系统家族里区分出来。
    创建分支

    git branch (branchname) 不写branchname 即显示当前现有分支

    切换分支

    git checkout (branchname)   
    -b 可直接创建并切换 b即branch
    -d 删除分支

    合并分支

    git merge

    查看提交历史

    git log     --online 显示简洁版本

    五、远程仓库

    添加远程仓库

    $ git remote add repo git@github.com:oneInsect/HelloWorld.git
    $ git remote    查看远程仓库

    提交到远程仓库

    git push repo dev

    拉取远程仓库数据

    git fetch url dev:dev      拉取
    git pull url dev:dev        拉取并merge

    删除远程仓库

    git remote rm repo
    xu@X MINGW64 /d/workspace/git_/repo (dev)
    $ git remote -v
    repo    git@github.com:oneInsect/HelloWorld.git (fetch)
    repo    git@github.com:oneInsect/HelloWorld.git (push)

    xu@X MINGW64 /d/workspace/git_/repo (dev)
    $ git remote add repo2 git@github.com:oneInsect/HelloWorld.git

    xu@X MINGW64 /d/workspace/git_/repo (dev)
    $ git remote -v
    repo    git@github.com:oneInsect/HelloWorld.git (fetch)
    repo    git@github.com:oneInsect/HelloWorld.git (push)
    repo2   git@github.com:oneInsect/HelloWorld.git (fetch)
    repo2   git@github.com:oneInsect/HelloWorld.git (push)

    xu@X MINGW64 /d/workspace/git_/repo (dev)
    $ git remote rm repo2

    xu@X MINGW64 /d/workspace/git_/repo (dev)
    $ git remote -v
    repo    git@github.com:oneInsect/HelloWorld.git (fetch)
    repo    git@github.com:oneInsect/HelloWorld.git (push)

    六、工作流程示意图

  • 相关阅读:
    larbin结构分析
    《钱不要存银行》OneNote
    全局变量、extern/static/const区别与联系
    GIS网址,转自别处
    MSDN无法显示页面的解决
    人生没有奇迹
    开源GIS系统
    推荐:GDAL学习资源
    中国农科院资源区划所MODIS的遥感信息地面接收站
    泡沫产生的特点
  • 原文地址:https://www.cnblogs.com/xu-xiaofeng/p/7789209.html
Copyright © 2020-2023  润新知