美文网首页上班这点事儿
Git与Github 使用教程

Git与Github 使用教程

作者: andreaxiang | 来源:发表于2017-04-13 23:26 被阅读0次

    1. Git与Github的使用

    任务目标:

    • 如何在git新建项目
    • 如何获取ssh key
    • 克隆项目
    • 如何往Github上添加删除上传项目

    step1:新建Git项目
    注册并登录Github账号,点击New repository 按钮新建项目(需要操作的内容有点多,请耐心看)。


    github1.png github2.png github3.png github4.png

    step2:获取并配置公钥
    打开git bash命令行工具,

    git安装使用:
    Windws: 安装git, 打开 gitbash
    Linux 打开终端
    Mac 打开终端

    bash 输入指令:git clone 加上刚拷贝的ssh地址,如图所示。
    (注意:初次使用会因为没有设置公钥而报错,不要惊慌,耐心跟着下面的操作就行了)

    git bash1 git bash2.png

    继续输入 ssh-keygen -t rsa -b 4096 -C "您的github邮箱"


    git bash3.png

    输入上面的命令后,一直按回车键,直到生成钥匙


    git bash4.png

    输入拷贝公钥的命令(也可直接找到公钥所在文件,用编辑器打开直接拷贝):cat ~/.ssh/id_rsa.pub


    git bash5.png

    打开Github个人主页,点击头像-->个人设置——>SSH设置-->添加SSH Key: 将拷贝的公钥添加上去


    github5.png

    step3:克隆项目
    此时已配置好了ssh key,再在git bash输入git clone 命令就成功了:git clone git@github.com:jirengu/blog.git

    git bash6.png

    继续练习:对已克隆项目进行命令行操作

    切换操纵:cd blog
    新建文件操作: touch index.com
    添加到暂存区:git add .
    提交到本地库(在本地电脑上保存该文件):git commit -am "addfile"
    推送到Github远程库(将该文件推送至Github上):git push origin master

    git bash7.png

    step4:开启Github pages线上预览功能
    点开项目的Settings设置——>GitHub Pages-->选中master branch


    github6.png

    2. 为什么要使用Git?

    • 首先要明确版本控制的概念:

    版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。

    • 本地版本控制系统
    • 集中式版本控制系统(SVN)
    • 分布式版本控制系统(Git)
    • Git 的优势
      诞生自2005,Linux 开源社区
    • 速度快
    • 设计原理简单
    • 允许上千个并行分支
    • 分布式上传,不怕断网等影响

    3. Git 简单操作

    • 重要概念:
    状态 概念解释
    已提交(mommitted) 该文件已经被安全地保存在本地数据库中了
    已修改(modified) 修改了某个文件,但还没有提交保存
    已暂存(staged) 把已修改的文件放在下次提交时要保存的清单中
    git项目状态图谱.png
    • 起步
      初次使用需要设置姓名和邮箱

    git config --global user.name "你的姓名"
    git config --global user.email 邮箱地址

    • clone 项目
      用于把一个GitHub是的项目clone(下载)到本地变为本地仓库

    //克隆
    git clone git@github.com:jirengu/blog.git
    //切换到克隆项目目录
    cd blog

    • 添加文件并提交

    //创建文件
    touch a.md
    //在文件里写入一个字符串
    echo "hello" > a.md
    git status

    git bash8.png
    • 添加文件并提交

    //把当前目录下的新增和修改的文件添加到暂存区
    git add .
    //查看状态
    git status

    git bash9.png
    • 把暂存区的更新提交到本地库

    //提交到本地库
    git commit -am "add file"
    //查看状态
    git status

    git bash10.png
    • 推送到远程GitHub库

    //把当前本地库里的改动推送到远程库(origin)的master 分支

    git push origin master

    git bash11.png
    • 修改删除文件

    //把远程仓库的变动更新合并到本地仓库
    git pull
    //修改文件
    vim a.md
    git add .
    //这里需要注意,如果提交消息包含大量字符串,提交参数不用加 m
    //此时会进入 vim 界面,按下i进入编辑状态,进行编辑
    //编辑完成后按下 esc 进入命令行状态,输入 :wq 保存退出 vim
    git commit -a
    git push origin master
    rm -rf a.md
    git add .

    • 相关问题
      git clone url和 git pull有什么区别
      本地仓库和远程仓库的区别?
      origin 代表什么?

    4. Git的复杂使用

    • 本地创建一个 git 项目推送到远程空仓库

    //创建一个文件夹
    mkdir newProject
    //切换至该文件夹
    cd new Project
    //把一个文件夹初始化成一个本地 git 仓库
    git init
    (注意:仓库和文件夹 的区别在于仓库下有一个隐藏的 .git文件夹;对于一个仓库,删除.git文件夹,就变成一个普通文件夹了)
    //新建一个文件
    touch index.html
    //写入“hello”内容至新建的文件
    echo "hello" > index.html
    //提交更新至暂存区
    git add .
    //提交至本地库
    git commit -am "init"
    //查看本地库里记录的远程库地址
    git remote -v
    //这里把远程库的地址添加个标签叫origin
    git remote add origin git@github.com:jirengu/blog2.git
    //推送到远程库地址
    git push origin master
    //慎用,这样会强制推送,会覆盖别人的代码
    git push -f origin master
    //在添加一个远程库的标签
    git remote add gitlab git@gitlab.com:abc/blog.git
    //推送到gitlab标签的地址上
    git push gitlab master
    //删除gitlab 标签
    git remote remove gitlab
    //修改origin标签对应的地址
    git remote set-url origin git@github.com:jirengu/blog3.git
    //把 gitlab 标签改名为coding
    git remote rename gitlab coding

    • 分支操作

    //创建本地库dev 分支
    git branch dev
    //切换到dev 分支
    git checkout dev
    touch b.md
    git add .
    git commit -am "add b.md"
    //推送到origin地址的dev分支上
    git push origin dev

    • 分支合并

    // 切换到master
    git checkout master
    //把 dev 分支上的内容合并到当前分支(master) 上
    git merge dev

    • 问题:合并冲突
      当自己和别人修改同一个文件的同一个地方,在执行 git pull 时更新本地合并时会出现冲突。

    解决方法:
    修改冲突文件
    重新提交

    相关文章

      网友评论

        本文标题:Git与Github 使用教程

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