本文讲解下git的使用,包括使用git上传项目工程到github,以及错误解决。

1.安装git

使用apt-get安

sudo apt-get update
sudo apt-get install git

使用下载安装

  1. 安装依赖库:
sudo apt-get update
sudo apt-get install build-essential libssl-dev libcurl4-gnutls-dev libexpat1-dev gettext unzip
  1. 下载:
wget https://github.com/git/git/archive/v1.9.2.zip -O git.zip
unzip git.zip
cd git-*
  1. 安装:
make prefix=/usr/local all
sudo make prefix=/usr/local install
  1. 更新:
make prefix=/usr/local all
sudo make prefix=/usr/local install

2.配置你的github:

  1. 配置github的个人信息
git config --global user.name "Your Name" #名字随意
git config --global user.email "youremail@gmail.com"
  1. 查看配置信息和编辑:
#查看:
git config --list
#编辑配置信息:
sudo vim ~/.gitconfig
##可以修改的地方
[user]
name = Your Name
email = youremail@domain.com

3.创建公钥:

ssh-keygen -C 'you email address@gmail.com' -t rsa   #会在 用户目录 ~/.ssh/ 下建立相应的密钥文件
#上传公钥
在 github.com 的界面中 选择右上角的 Account Settings,然后选择 SSH Public Keys ,选择新加。
Title 可以随便命名,Key 的内容拷贝自 ~/.ssh/id_rsa.pub 中的内容,完成后,可以再使用 #测试:
ssh -v git@github.com
会返回提示信息:
Hi wpeace1212! You've successfully authenticated, but GitHub does not provide shell access.

4. 使用git

  1. 在想要上传的工程目录下建立README文件
  2. 初始化该目录:git init
  3. 新增文件到gi
#全部增加:
git add .
#指定增加:
git add filename #filename文件名
  1. 提交文件(本地)
#提交所有
git commit -m "Initial Commit" -a #m表示message , -a 表示所有
#提交特定文件
git commit -m "Initial Commit" file #file表示特定文件
  1. 提交到github:
#建立远程分支:第一次需要做
git remote add origin https://github.com/wpeace1212/BlogSource.git
#https://github.com/wpeace1212/BlogSource.git 为你的工程url
#查看远程分支:
git remote -v
#提交你的代码:第二次提交时只要执行这条语句:
git push origin master

5.解决冲突和创建分支:

#查看所有分支:
git branch -a
#新建新的分支 other
git branch other
#切换到other
git checkout -b other
#在分支上提交工作:
git commit -m "other file" other
#合并分支
git merge

6.常见问题解决:

  1. remote origin already exists.
git remote add origin https://github.com/wpeace1212/BlogSource.git
错误提示:fatal: remote origin already exists.
#解决办法:
git remote rm origin
再重新执行
  1. ! [rejected] master -> master (non-fast-forward)
git push origin master
错误提示:failed to push som refs to.......
解决办法1:
git pull origin master
git push origin master
解决办法2:强制解决;
git pull
git push --force origin master

来自一条小鲨鱼(rlovep.com)

7.觉得很有用的一张图

git简易入门(github)的更多相关文章

  1. mac os x使用Git简易入门教程

    具体如下: 1, 首先要了解什么是Git. 简而言之,Git是一个分布式的代码版本管理工具.类似的常用工具还有SVN,CVS. 概念了解参见:http://baike.baidu.com/subvie ...

  2. 10分钟入门git简易教程

    在注册了github账号之后,一度不知道该如何使用. 在仔细研究了github的官方说明文档.廖老师的教程.还有许多博主的文章之后,总算对github的操作和体系有了较为深刻的了解,还有这篇简单的入门 ...

  3. GitHub与Git指令入门

    GitHub入门 创建账户 之前做代码版本控制都是在bitbucket上面的私有仓库.现在开源社区挺火的,想在github找些开源的工程学习一下,于是加入了github,这里记录一下入门的经历. 首先 ...

  4. 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 ...

  5. 学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳 ...

  6. 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 ...

  7. 【原创】30分钟入门 github

    很久没更新了,这篇文章重点在github的入门使用,读者可以下载github for windows shell,边看边操作,加深印象. 好了,30分钟的愉快之旅开始吧: 一.github使用的注意事 ...

  8. 第三章 Git的入门 - 读书笔记

    Android驱动月考3 第三章 Git的入门 - 读书笔记 对于Github,这是全世界最大的开源平台,你可以把你做的项目在这里开源,把你发现的一些新技术在这里开源,向全世界的开发者们分享,大家都彼 ...

  9. git简单入门

    git简单入门 标签(空格分隔): git git是作为程序员必备的技能.在这里就不去介绍版本控制和git产生的历史了. 首先看看常用的git命令: git init git add git comm ...

随机推荐

  1. out.println(session.getLastAccessedTime());的返回值到底是毛线意思???

    out.println(session.getLastAccessedTime());这个语句是输出最后一次成功获取session对象Attribute值的一个指令, 他的返回值是一个long型数据, ...

  2. Django基础模板案例

    想要用django  访问一个页面 同时传参数过去.在页面中接受参数 案例:附代码 #创建一个项目 项目名字是 yhl_test django-admin startproject yhl_test ...

  3. (K)ubuntu上将分区格式化成NTFS格式

    新买了硬盘,装系统时,为Windows预留了几个分区,由于没有其他选择,因此将分区格式化成了fat32格式.装完系统后,总是很纠结,想把这些分区格式化成NTFS格式. google了一下,从这个网址( ...

  4. Linux --centos7 开机启动设置

    以Linux下指定sun用户在linux开机时执行/home/sun/startrun.sh为例: 以root登录linux 执行vi /etc/rc.d/rc.local 在文档末尾添加一行语句:s ...

  5. genymotion的安装

    1.安装virtualBox google的模拟器是运行在qemu上面的. genymotion这个模拟器运行在virtualBox上面.

  6. Mybatis之Configuration初始化(配置文件.xml的解析)

    源码解读第一步我觉着应该从Mybatis如何解析配置文件开始. 1.先不看跟Spring集成如何解析,先看从SqlSessionFactoryBuilder如果解析的. String resouce ...

  7. CTF中的变量覆盖漏洞

    https://www.cnblogs.com/bmjoker/p/9025351.html 原   作 者:bmjoker出 处:https://www.cnblogs.com/bmjoker/p/ ...

  8. vue生命周期小笔记

    一张图谨记vue每个生命周期的获取状态 beforecreate :可以在这加个loading事件 created :在这结束loading,还做一些初始化,实现函数自执行 mounted : 在这发 ...

  9. Spring Boot配置FastJson报错'Content-Type' cannot contain wildcard type '*'

    升级到最新版本的fastjson以后报的错,查了一下资料,发现 fastjson从1.1.41升级到1.2.28之后,请求报错:json java.lang.IllegalArgumentExcept ...

  10. 可用免费asp.net空间

    免费试用空间: 支持到.net 4.6,有sql server数据.1G空间,500M数据库.免费使用60天.可绑定一二级域名.到期不能再绑定已绑定过的域名. http://www.mywindows ...