Linux下Git和GitHub环境的搭建

1.创建Github帐号  (name@server.com)

2.安装git

[root@cloud ~]# yum install git -y

3.生成ssh key,复制公钥

[root@ray ansible]# ssh-keygen -t rsa -C 'name@server.com'

[root@ray .ssh]# cat ~/.ssh/id_rsa.pub

4.登陆github setting-->ssh and gpg keys-->new ssh key-->粘贴公钥

5.测试ssh key是否部署成功

[root@ray ansible]# ssh -T git@github.com

6.配置git

[root@cloud ~]# git config --global core.editor vim
[root@ray ansible]# git config --global user.eamil 'name@server.com' # 邮箱
[root@ray ansible]# git config --global user.name 'Raylively' # 用户名 # 查看配置
[root@cloud ~]# git config --list
[root@cloud ~]# cat ~/.gitconfig

工作区: 编写程序的目录

# 创建全新的工作目录
[root@cloud ~]# git init py3 # 使用已经存在的目录,在目录下执行如下命令
[root@cloud py3]# git init . # 查看版本库.git
[root@cloud py3]# ls -A   # 查看状态
[root@cloud py3]# git status # 添加文件到暂存区
[root@cloud py3]# git add files # 加入指定文件
[root@cloud py3]# git add . # 加入全部文件 # 删除暂存区文件
[root@cloud py3]# git rm --cached files # 提交
[root@cloud py3]# git commit
[root@cloud py3]# git commit -m 'second commit' # 查看提交历史
[root@cloud py3]# git log

暂存区:保存工作区文件到版本库之间的缓冲地带

版本库:保存每次提交的代码。(工作区中的.git目录就是版本库)

分支管理

# 创建一个本地分支: git branch <新分支名字>
[root@cloud py3]# git branch b1 # 将本地分支同步到GitHub上面: git push <本地仓库名> <新分支名> #切换到新建立的分支: git checkout <新分支名>
[root@cloud py3]# git checkout b1 # 合并分支到master
[root@cloud py3]# git checkout master
[root@cloud py3]# git merge b1 #为你的分支加入一个新的远程端: git remote add <远程端名字> <地址> #查看当前仓库有几个分支: git branch
[root@cloud py3]# git branch #从本地删除一个分支: git branch -d <分支名称>
[root@cloud py3]# git branch -d b1 #同步到GitHub上面删除这个分支: git push <本地仓库名> :<GitHub端分支>

切换到某一版本(如果需要修改,创建一个分支)

[root@cloud py3]# git log
[root@cloud py3]# git checkout <版本序列>

2 利用Git从本地上传到GitHub

  1. 进入要所要上传文件的目录, 输入命令 git init
  2. 创建一个本地仓库origin,使用命令 git remote add origin git@github.com:your_name/yourRepo.git,your_name是你的GitHub的用户名,yourRepo是你要上传到GitHub的仓库
  3. 比如你要添加一个文件xxx到本地仓库,使用命令 git add xxx,可以使用 git add . 自动判断添加哪些文件
  4. 然后把这个添加提交到本地的仓库,使用命令 git commit -m "说明这次的提交"
  5. 最后把本地仓库origin提交到远程的GitHub仓库,使用命令 git push origin master

3 从GitHub克隆项目到本地

  1. 到GitHub的某个仓库,然后复制右边的那个(HTTPS clone url)
  2. 回到要存放的目录下,使用命令 git clone https://github.com/your_name/yourRepo.git,your_name是你的GitHub的用户名,yourRepo是你要clone的仓库
  3. 如果本地的版本不是最新的,可以使用命令 git fetch origin,origin是本地仓库
  4. 把更新的内容合并到本地分支,可以使用命令 git merge origin/master
  5. 如果你不想手动去合并,那么你可以使用: git pull <本地仓库> master 这个命令来拉去最新版本并自动合并

4 GitHub的分支管理

创建分支

  1. 创建一个本地分支: git branch <新分支名字>
  2. 将本地分支同步到GitHub上面: git push <本地仓库名> <新分支名>
  3. 切换到新建立的分支: git checkout <新分支名>
  4. 为你的分支加入一个新的远程端: git remote add <远程端名字> <地址>
  5. 查看当前仓库有几个分支: git branch

删除分支

  1. 从本地删除一个分支: git branch -d <分支名称>
  2. 同步到GitHub上面删除这个分支: git push <本地仓库名> :<GitHub端分支>

5 常见错误

如果出现报错为ERROR: Repository not found.fatal: The remote end hung up unexpectedly则代表你的 origin 的url 链接有误,可能是创建错误,也可能是这个 git@github.com:xxx/new-project.git url 指定不正确。重新创建。

命令行下:
echo "# Blog" >> README.md

git init
git add README.md

git commit -m "first commit"

git remote add origin https://github.com/Raylively/Blog.git

git push -u origin master

修改/etc/ssh/ssh_config文件的配置,以后则不会再出现此问题

最后面添加:

StrictHostKeyChecking no

UserKnownHostsFile /dev/null

# 克隆版本库
git clone git@github.com:Raylively/q_a.git

# 上传文件

git add filename

git commit -m "add filename"
git push origin master

首先进入你的master文件夹下, Git Bash Here ,打开命令窗口

$ git --help                                      # 帮助命令

$ git pull origin master                    # 将远程仓库里面的项目拉下来

$ dir                                                # 查看有哪些文件夹

$ git rm -r --cached target              # 删除target文件夹
$ git commit -m '删除了target'        # 提交,添加操作说明

fatal: 远程 origin 已经存在。

此时只需要将远程配置删除,重新添加即可;

git remote rm origin

git remote add origin https://github.com/***/WebCrawlers.git

linux 下使用github的更多相关文章

  1. Linux下的GitHub安装与简单配置教程 ~ 转载

    Linux下的GitHub安装与简单配置教程   1.GitHub简介 Git是一个分布式版本控制系统,与其相对的是CVS.SVN等集中式的版本控制系统. 2.Git的安装 1)安装Git a.查看与 ...

  2. Linux下使用 github+hexo 搭建个人博客07-next主题接入搜索和站点管理

    这是搭建个人博客系统系列文章的最后一篇,如果你是从第一篇一路跟下来的,那么恭喜你,即将完成整个博客网站的搭建.OK,话不多说,开始我们的收官之战. 不知你想过没有,如果我们的文章少,一眼看完整个目录, ...

  3. Linux下使用 github+hexo 搭建个人博客06-next主题接入数据统计

    之前说了 next 主题的优化和接入评论系统.让我们完成了自己所需的页面风格和排版,也可让访问用户在每篇博文评论,完成博主和访问用户的交互. 本章我们继续讲解其他重要功能. 既然是一个网站,那么我们就 ...

  4. Linux下使用 github+hexo 搭建个人博客05-next主题接入评论系统

    静态站点拥有一定的局限性,因此我们需要借助于第三方服务来扩展我们站点的功能. 而评论系统是最常用于和网站用户交流的,因此本章讲解在 next 主题,如何接入评论系统. 参考网站:Next 使用文档,第 ...

  5. Linux下使用 github+hexo 搭建个人博客04-next主题优化

    上篇我们说了 hexo 的优化,针对的站点的优化. 本篇讲解 next 主题的优化,包括:使用语言.前端页面显示宽度.菜单.侧栏.头像.添加或取消动画效果.打赏功能等等. 让页面排版更符合我们所要的功 ...

  6. Linux下使用 github+hexo 搭建个人博客03-hexo配置优化

    上两张文章,我们说了 hexo 部署.主题的切换.博文的创建.MarkDown 简单使用和 hexo 部署到 GitHub Pages. 也说了我们会使用 next 主题做为我们后期博客的使用和维护. ...

  7. Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages

    之前的这篇文章<Linux下使用 github+hexo 搭建个人博客01-hexo搭建>,相信大家都知道怎么搭建 hexo ,怎么切换主题,并且完成了一篇博文的创建,以及 MarkDow ...

  8. Linux下使用 github+hexo 搭建个人博客01-hexo搭建

    为什么要搭建自己的博客系统? 原因有好几个吧,归类如下:1.自己搭建博客系统很有成就感,可以自己选定页面风格和页面排版: 2.自己搭建博客系统可以根据自己的需要添加各种插件功能,因此整体上比网上的第三 ...

  9. linux下git+github个人使用记录

    Linux: 安装git的命令: sudo apt install git 查看版本确认安装成功: git --version 生成密钥: ssh-keygen -t rsa -C "you ...

随机推荐

  1. centos7 虚拟机 A start job is running for /etc/rc.d/rc.local Comp。。。

    一直卡这F5查看日志,最后一行出现A start job is running for /etc/rc.d/rc.local Comp... 原因是rc.local权限设错了解决方法:1.进入单用户模 ...

  2. IDEA插件之JProfiler

    1.是什么?来用干嘛的? 一个商业授权的Java剖析工具. 用来剖析程序内存.CPU使用情况,找到性能瓶颈,快速定位问题所在. 2.IDEA安装JProfiler插件 (1)File -> Se ...

  3. javaSE总结(一)-java数据类型和运算符

    一.注释 (1)单行注释: // (2)多行注释:/*  */  (3)文档注释:/**  */ 二.标识符和关键字 (1)分隔符:分号; 花括号{} 方括号[] 圆括号() 空格 圆点(.)     ...

  4. Django-djangorestframework-渲染模块

    目录 渲染模块 渲染模块的效果 源码分析 如何自定义配置使用渲染类 自定义渲染模块 渲染模块 可以根据用户请求 URL 或 用户可接受的类型,筛选出合适的 渲染组件. reponse 数据 json ...

  5. 并不对劲的CF1245E&F:Cleaning Ladders

    CF1245 E. Hyakugoku and Ladders 题目大意 有一个10 \(\times\) 10的网格,你要按这样的路径行走: 网格中有一些单向传送门,每个传送门连接的两个格子在同一列 ...

  6. hdu 1113 简单字符处理问题

    #include <map> #include <cstdio> #include <iostream> #include <string> #incl ...

  7. Unity 更改鼠标指针

    1. 把鼠标指针图标导入到Unity中,把它的Texture Type改为Cursor : 2. 打开PlayerSettings面板,把鼠标指针图片拖到Default Cursor中: 3. 在场景 ...

  8. C# WebForm 屏蔽输入框的验证

    按钮做界面跳转时,屏蔽输入框的验证可添加属性:  CausesValidation="FALSE" <form runat="server"> &l ...

  9. docker启动mysql 自定义配置文件

    命令行如下: docker run --name mysql56 -p : -v /home/mysql56/data:/var/lib/mysql -v /home/mysql56/conf:/et ...

  10. 深入理解hadoop之mapreduce

    本文系原创,若有转载需要,请注明出处.https://www.cnblogs.com/bigdata-stone/ 1.mapReduce简介 MapReduce是面向大数据并行处理的计算模型.框架和 ...