GitHub学习总结
一、安装git:下载Git,官网地址:https://git-scm.com/,进入官网首页,然后点击download,下载对应系统的git就行。

二、我用的是win系统,打开git界面是这样的:

在用git前首先要配置2个全局变量,否则代码不能提交
git config --global user.name 用户名
git config --global user.email 用户邮箱
接下来
创建版本库:git init
查看仓库状态:git status
添加文件:git add 文件名(如果在当前文件夹下修改了多个文件,文件名可换成“.”即添加当前目录下修改的所有文件)
提交到仓库(这里的仓库指本地的仓库):git commit -m "注释信息"
删除文件:git rm 文件名
三、推送到远程仓库
1.首先要添加一个远程库:git remote add origin(这里写你给远程库起的别名) https://github.com/Diewind/gittest.git(这里是远程库的地址)
2.同步Git仓库至本地仓库
git pull origin(远程库的别名) master
如果在创建项目时勾选了README选项,则可以用git pull --rebase origin master把该文件下载下来
2.推送到远程仓库:
- git push origin(这里写远程库的别名,也可以填远程库完整的https地址) master(分支名,可省略,默认为当前分支,分支在后面内容会讲到)
- git push -u origin(这里写远程库的别名,也可以填远程库完整的https地址) master(分支名,可省略,默认为当前分支,分支在后面内容会讲到)
这里说一下二者的区别:
$ git push origin 将当前分支推送到origin主机的对应分支。 如果当前分支只有一个追踪分支,那么主机名都可以省略。
$ git push 如果当前分支与多个主机存在追踪关系,那么这个时候-u选项会指定一个默认主机,这样后面就可以不加任何参数使用git push。
$ git push -u origin master 上面命令将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了。
不带任何参数的git push,默认只推送当前分支,这叫做simple方式。此外,还有一种matching方式,会推送所有有对应的远程分支的本地分支。Git 2.0版本之前,默认采用matching方法,现在改为默认采用simple方式。
四、日志查看与版本切换
1.日志查看:
git log 显示所有提交过的版本信息;
git log --pretty=oneline 只会留下commit id (版本号 (用SHA1字串表示))和 提交版本时的描述信息;
git reflog 可以查看所有分支的所有操作记录(包括commit和reset的操作),包括已经被删除的commit记录,git log则不能察看已经删除了的commit记录。
注:以上3个方法都可以看到版本号!
2.切换版本:
git reset --hard HEAD^(表示切换到前1版本,如果写^^,表示切换到2版本,如果写~100,则表示切换到前100版本)
git reset --hard 版本号(更加精准,填写版本号的前几位数字,是唯一的就行)
五、分支
查看分支:git branch
创建分支:git branch 分支名
删除分支:git branch -d 分支名
切换分支:git checkout 分支名
合并分支:git merge 分支名(将“分支名”合并到当前分支)
创建并切换到分支名:git checkout -b 分支名
六、远程仓库
查看远程仓库:git remote
查看远程仓库(显示远程仓库地址):git remote -v
添加远程仓库:git remote add 远程仓库别名 远程仓库地址
删除远程仓库:git remote remove 远程仓库别名
修改远程仓库:git remote rename 远程仓库旧名称 远程仓库新名称
七、配置公钥登录
1.配置ssh格式的远程仓库地址:git remote add 远程仓库别名 远程仓库地址(这里的远程仓库地址填写ssh地址,如下图)

2.创建sshkey
ssh-keygen -t rsa -C "邮箱"
完成后私钥和公钥都在C盘的“C:\Users\Administrator\.ssh\”目录下,用公钥即可。

3.把公钥的内容复制到git的ssh上





把公钥复制在这即可,以后推送到远程仓库就不需要再次输账号密码了。
GitHub学习总结的更多相关文章
- GitHub学习心得之 简单操作
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 前言 本文对Github的基本操作进行了总结, 主要基于以下文章: http://gitre ...
- GitHub学习心得之 安装配置与多帐号管理
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 GitHub学习心得之 安装配置与多帐号管理 1.前言2.GitHub Linux安装(ub ...
- 2019.3.6 Github学习 &Git学习
Github学习 1.使用Github 1.1 目的 借助github托管项目代码 1.2 基本概念 仓库(Repository) 仓库的意思是:即你的项目,你想在Github上开源一个项目,那就必须 ...
- git/github学习笔记
郑重提示,本文来自这里,如果喜欢,请关注原作者. 1. git 版本控制系统 相比CVS\SVN优势: - 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度块 ...
- 我的git与github学习历程
因为想要知道如何把代码放到github上,所以就百度了一下,然后找到一个<如何从github上面拷贝源码>的文章,就先进行练习了下 1.首先到git官网下载git版本控制工具的安装包, ...
- Swift - 语言指南,来自github学习
@SwiftLanguage 更新于 2016-6-6,更新内容详见 Issue 55.往期更新回顾详见<收录周报> 这份指南汇集了 Swift 语言主流学习资源,并以开发者的视角整理编排 ...
- GitHub学习资料
GitHub账户注册注册了有一年多了(Joined on 13 Apr 2015),一直以来都是本地命令行上传到内网的Git服务器Gitlab.最近正好在学习新的编程语言,所以当初荒废的GitHub想 ...
- github 学习笔记【一】
这几天在学习github ,其实学了主要用来管理自己的项目!因为要在家里和公司两头做! 所以就开始学习使用!目前熟练几个命令,其他的一边用一遍学吧!想一举成功应该是不太可能的! 反复记忆才能更好,据说 ...
- github学习(一)
初识github篇. 一.什么是github: GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub. g ...
- github学习(二)
Git学习(一) 学习github一定要学会git,否则在后续的github运用中会出现很多问题. 1.安装Git: Mac自带Git,Windows需要自己安装. 2.配置git: 配置user.n ...
随机推荐
- [转]:Delphi XE中泛型数组的使用范例
Delphi XE中泛型数组的使用范例,下面的范例简单的使用了泛型字符串数组,如用 TArray 代替 array of Word, 还可以使用 TArray 类提供的算法(就是少了点). uses ...
- What are some good books/papers for learning deep learning?
What's the most effective way to get started with deep learning? 29 Answers Yoshua Bengio, ...
- centos6 利用外部的smpt服务器计划任务发送邮件
centos可通过修改配置文件以使用外部SMTP服务器,达到不使用sendmail而用外部的smtp服务器发送邮件的目的, 操作如下: 一.安装mailx与sendmail # yum -y inst ...
- 【转载】vi/vim使用进阶: 指随意动,移动如飞 (一)
vi/vim使用进阶: 指随意动,移动如飞 (一) << 返回vim使用进阶: 目录 本节所用命令的帮助入口: :help usr_03.txt :help motion.txt :hel ...
- spring boot+mybatis+mysql
spring boot整合mybatis,曾经的几个小困惑和踩的坑. 一.mybatis的结构 mybatis和spring boot的整合,网上无数的教程,都是教你一步步集成,照着做没问题,但做下来 ...
- 搞明白GOROOT,GOPATH,GOBIN,project目录
我们接下来一个一个来看关于Go语言中的三个目录的详细解释先通过go env查看go的环境变量(我这里是mac的环境,所以可能和你的不同) localhost:~ zhaofan$ go env GOA ...
- 居于U2000手机管理光猫,小区运营商FTTH光猫注册神器,MA5680T手机管理,自动添加光猫
此软件居于U2000开发,需要U2000管理支持 主要功能: 光猫查看->上线情况.下线原因.下线时间.光猫重启.光模块发送功能.接收功能.温度 Radius诊断->用户基本信息.拨打电话 ...
- oneNote2016代码高亮插件
下载地址:https://github.com/elvirbrk/NoteHighlight2016/releases 安装插件前必须安装oneNote笔记. NoteHighlight插件有32位和 ...
- mysql问题解决SELECT list is not in GROUP BY clause and contains nonaggregated column
今天在Ubuntu下的部署项目,发现一些好好的列表页面发生 :Expression # of SELECT list is not in GROUP BY clause and contains no ...
- OpenGL 获取当前屏幕坐标的三维坐标(gluUnProject使用例子 Qt)
之前使用VS+glut实现了gluUnProject使用例子,用于渲染管道的逆过程,将屏幕坐标转换为opengl三维坐标,本文将尝试使用QT来实现. 代码如下: main.cpp 12345678 ...