Git 的简单使用
一直在使用Git,仅限于简单的使用,但还是记不住几个简单。在这边总结一下,加深印象,也方便查找。
安装Git
平常主要在windows和ubuntu上工作,就以windows为例,Linux和Mac平台应该也差不多,反而是windows上坑比较多。
在windows上首先要下载Git,谷歌上搜一下,傻瓜式下载安装。Linux上不同发行版会有点小差异,不过你可以输入git,系统会提示你如何进行安装。
我们可以简单的把Git看成三个部分:本地、暂存区、远程仓库。下面我们来简单介绍各部分的作用。
存入暂存区
在命令行中进入该目录,输入
git init命令,该命令会把本地文件夹变成Git可以管理的仓库,主要是生成 .git 文件。git add fileName命令可以添加想要上传的文件,比如添加 readme.md 就输入git add readme.md,这个命令可以多次重复使用,添加多个文件。如果要添加一整个文件夹也是同理,git add 文件夹名。比如git add images。把添加的文件上传至暂存区,并附上说明:
git commit -m "add readme"。
经过这三步就可以把本地文件上传至暂存区。这个时候如果我们在修改本地文件时不小心改乱了,还可以执行版本退回,也可以执行撤销修改,删除文件等操作。由于是简单的入门教程,本文不展开讨论。
添加SSH key
之前的操作都是在本地上进行的,现在我们需要把暂存区的文件提交到GitHub仓库中。
首先我们需要有一个GitHub账号,然后利用ssh秘钥,让GitHub可以识别你的电脑。
在本地创建SSH Key:
$ ssh-keygen -t rsa -C "youremail@example.com"把邮箱地址换成你自己的地址,然后一路回车,之后你就可以再用户主目录中找到 .ssh 目录,里面有 id_rsa 和 id_rsa.pub 两个文件,id_rsa 是私钥,不可以泄露,id_rsa.pub 是公钥,我们需要把它复制到GitHub中。
登录你的GitHub账号,在settings中找到SSH and GPG keys选项,点击New SSH key,把 id_rsa.pub 中的内容复制到Key中,并取一个title。点击Add SSH key就完成了。
如果你有多个电脑,可以添加多个key,一个电脑对应一个KEY。光是让GitHub认得这是你的电脑还不够,我们还要把本地仓库与远程仓库进行绑定。
本地仓库其实就是本地文件夹,但我们还没有建立远程仓库,接下来教大家如何建立远程仓库。
创建远程仓库
在你的GitHub的头像旁边有一个加号,点击加号在选择New repository,填好Repository name和Description,点击Create repository,一个远程仓库就建立好了。
接下来我们要把本地仓库与远程仓库进行绑定,在本地仓库文件夹中执行:
$ git remote add origin git@github.com:yourName/repositoryName.git
把 yourName 换成你的GitHub的账户名,把repositoryName换成刚刚建好的远程仓库名,就可以把本地仓库与远程仓库进行绑定。
本地仓库和远程仓库的名称并不一定要相同,不过相同的名称方便我们管理。
这时我们就可以把本地仓库的内容推送至远程仓库了:
$ git push -u origin master
第一次推送时我们加上 -u 参数,可以把本地的 master 分支和远程的 master 分支关联起来,以后就可以简化我们的推送命令。
$ git push origin master
至此,我们已经完成了从本地到远程的所有操作,基本可以满足平时的使用。
题外话
如果你在windows上进行工作,我建议使用GitHub的桌面端,因为windows上总是会有一些奇奇怪怪的错误。比如你的用户文件夹是中文名,就会产生问题,而解决这些莫名其妙的问题其实是在浪费时间,最好的解决办法就是换个用户名或者换台电脑。GitHub的桌面端简单易用,不需要我们手动绑定SSH key,只需登录账户就可以使用了。
如果你是新手,遇到难以解决的问题,在试图解决问题但没有成功也没有人能够帮助你的时候,可以先把本地仓库先备份到其他地方,然后删除掉你的本地仓库,重新从远程仓库克隆一份,再进行操作。克隆的命令如下:
$ git clone git@github.com:yourName/repositoryName.git
这个方法可以帮助你解决一部分问题,但不保证你遇到的所有问题都能解决。
Git 的简单使用的更多相关文章
- linux下git的简单运用
linux下git的简单运用 windows下也有git,是git公司出的bash,基本上模拟了linux下命令行.许多常用的命令和linux下操作一样.也就是说,windows下的git命令操作和l ...
- git 的简单使用方法
git 的简单使用方法1. 服务器 安装完成2. ssh 中的账号创建完成3. 创建 ssh 账号,会在 ssh 的安装目录下的home 目录里面,多了用户家目录4. 进入该目录 ,创建一个新的文件夹 ...
- eclipse IDE使用git方法简单介绍
eclipse下使用git插件上传代码至github 1.eclipse下安装git eclipse git 插件的安装. 点击 Help->Install New Software-> ...
- VS2015 与 Git 的简单使用
前言 在白忙之中抽了点时间,记录了下 VS 与 Git 的简单使用. 在之前使用命令行的时候,提交或拉取代码时,总报错:(提取时遇到错误: Unsupported URL protocol),后来在网 ...
- 初始github——git的简单使用
初学者~ 有两篇吧,一篇在github上 https://github.com/DefaultYuan/Git-Pro/wiki/Introduction 文章来源:<git的简单使用> ...
- Git 的简单测试
Git 简介 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开 ...
- 【转载】手把手教你使用Git(简单,实用)
手把手教你使用Git(简单,实用) 标签: git 2016年04月21日 20:51:45 1328人阅读 评论(0) 收藏 举报 一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. ...
- git的简单使用方式(基本操作部分)
git的简单使用方式(基本操作部分) 1.简单介绍GIT的工作流程 git一般的工作流程: 克隆git的资源作为工作目录(一般会使用命令git clone进行克隆); 在克隆的资源上对文件进行增加或者 ...
- GIT Bash 简单讲解-git如何推/拉代码
GIT Bash 简单讲解 一. 注册/登录GIT账号 注册(或者登录) GitHub地址:https://github.com/ 注册不做详细的讲解,按照注册指示进行注册就可以 ...
- git的简单理解及基础操作命令
前端小白一枚,最近开始使用git,于是花了2天看了廖雪峰的git教程(偏实践,对于学习git的基础操作很有帮助哦),也在看<git版本控制管理>这本书(偏理论,内容完善,很不错),针对所学 ...
随机推荐
- cdoj 1246 每周一题 拆拆拆~ 分解质因数
拆拆拆~ Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/1246 Descri ...
- java web servlet
一.什么是Servlet Servlet是一种小型的Java程序,它扩展了Web服务器的功能.作为一种服务器端的应用,他是运行在Servlet容器当中,例如Tomcat就是一种流行的Servlet容器 ...
- WPF基础到企业应用系列7——深入剖析依赖属性(WPF/Silverlight核心)
一. 摘要 首先圣殿骑士非常高兴这个系列能得到大家的关注和支持.这个系列从七月份開始到如今才第七篇,上一篇公布是在8月2日,掐指一算有二十多天没有继续更新了,最主要原因一来是想把它写好,二来是由于近期 ...
- delphi 判断是否出现滚动条
delphi 判断是否出现滚动条 if (GetWindowlong(Stringgrid1.Handle, GWL_STYLE) and WS_VSCROLL) <> 0 the ...
- python selenium自动化(一)点击页面链接测试
需求:现在有一个网站的页面,我希望用python自动化的测试点击这个页面上所有的在本窗口跳转,并且是本站内的链接,前往到链接页面之后在通过后退返回到原始页面. 要完成这个需求就必须实现3点: 1. 找 ...
- mydumper原理1
http://www.cnblogs.com/linuxnote/p/3817698.html?utm_source=tuicool&utm_medium=referral mydumper介 ...
- 01 MySQL锁概述
锁是计算机协调多个进程或线程并发访问某一资源的机制.在数据库中,除传统的计算资源(如CPU.RAM.I/O 等)的争用以外,数据也是一种供许多用户共享的资源.如何保证数据并发访问的一致性.有效性是所有 ...
- 小白日记11:kali渗透测试之服务扫描-banner、dmitry、nmap特征库、操作系统识别、SNMP
服务扫描 不能单纯的以端口辨别服务.很多网络服务是漏洞频发的高危对象,对网络上的特定服务进行扫描,往往能让我们少走弯路,增加渗透成功的几率.确定开放端口后,通常会对相应端口上所运行服务的信息进行更深入 ...
- UITableView优化技巧
UITableView的简单认识 UITableView最核心的思想就是UITableViewCell的重用机制.简单的理解就是:UITableView只会创建一屏幕(或一屏幕多一点)的UITable ...
- cocos2d-x, protobuf, no config.h, #error "No suitable threading library available."
在用cocos2d-x3.2 + protobuf编译Android项目的时候,protobuf出现了两个问题: 1. 首先是config.h找不到,查阅自后说是通过命令或工具生成的,里面的内容根据不 ...