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. linux下的终端利器 tmux 安装以及使用

    ref :https://www.jianshu.com/p/fd3bbdba9dc9 Introduction 为什么使用tmux? 因为如果我们用terminal连接remote server.发 ...

  2. 审计一套CMS中的SQL注入

    漏洞分为系统漏洞和应用漏洞,系统漏洞以二进制漏洞为代表,其挖掘难度较高需要对反汇编和操作系统原理深入理解,而除了系统漏洞以外还有一些应用漏洞,包括不限MySQL,Apache,为代表的Web漏洞,这里 ...

  3. 怎样使用FormData对象加工表单数据

    1. 获取表单(form)节点 2. 对FormData实例做相关操作 3. 发起HTTP请求 function sendForm(form) { var formData = new FormDat ...

  4. Unity Button延迟功能

    有时候Button点下去不是要求立即反应的,而是先有个特别短的动画,再反应. 实现: 继承Button,然后重写一下OnPointerClick,利用协程来延迟. using System.Colle ...

  5. C#异步编程中的最佳实践(做法)

    原文地址Stephen Cleary 写得很详细,尤其讲到了 GUI 上下文调用,在APS.NET中它会阻塞 GUI 线程,从而导致死锁.而控制台中却不存在这个问题. 比如开发过程中本地写控制台程序测 ...

  6. java获取类的3种方式

    1.Class.forName("全类名"):将字节吗文件加载进内存,返回Class对象,多用于配指文件,将类名定义在配置文件中,便于利用java的反射机制生成类对象,加载类. / ...

  7. python现状

    自从官方宣布 2020 年 1 月后不再更新维护 Python2,已经有一大批开源软件将其抛弃.今天,抛弃 Python2 的名单上又多了一个重磅软件.Python2 是 Python 官方在 200 ...

  8. 一个下午整理的Web前端常见的英文缩写

    PV (Page View)页面浏览量 FED(Front-End Development)前端开发 F2E(Front-End Engineer)前端工程师 WWW(World Wide Web)万 ...

  9. js面向对象的几种方式

    对象的字面量 var obj={}:创建实例对象 var obj=new Object();构造函数模式 function fn(){}, new fn();工厂模式:用一个函数,通过传递参数返回对象 ...

  10. 在eclipse导入项目的步骤

    1. Import 2. Next 3. 确定  选中copy projects into workspace    Finish 这样项目就导入进来了. 4.导入jar包 Configure Bui ...