美文网首页上班这点事儿
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