Windows下上传项目到github
首先,一定要有耐心。看到一大堆的命令行(其实并没有一大堆)不要觉得枯燥,最后当你成功把你的项目上传上去之后那种胜利的成果,还是挺有意思的。本人第一次写博客,勿喷。
我写的是主要的流程,详细内容还请移步廖雪峰老师的官网:Git教程 - 廖雪峰的官方网站
准备工作
安装git
从https://git-for-windows.github.io下载,然后按默认选项安装即可。
安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!
配置机器名字和Email地址
在Git Bash打开的命令行输入
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
注意git config命令的–global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
配置SSH
由于你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要一点设置:
第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
$ ssh-keygen -t rsa -C "youremail@example.com"
你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
第2步:添加SSH key。登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:
点“Add Key”,你就应该看到已经添加的Key:
为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。
当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。
最后友情提示,在GitHub上免费托管的Git仓库,任何人都可以看到喔(但只有你自己才能改)。所以,不要把敏感信息放进去。
如果你不想让别人看到Git库,有两个办法,一个是交点保护费,让GitHub把公开的仓库变成私有的,这样别人就看不见了(不可读更不可写)。另一个办法是自己动手,搭一个Git服务器,因为是你自己的Git服务器,所以别人也是看不见的。这个方法我们后面会讲到的,相当简单,公司内部开发必备。
SSH Key只需要配置一次,以后上传项目就不需要再次配置了。
上传本地项目
当SSH安装完成后,你就可以开始上传你的本地项目了。
下面的3幅图是要输入的命令行:
详细步骤:
1.打开Git Bash
如果你已经安装过Git客户端,在要上传的项目上右键可以找到Git Bash Here
2.按步骤输入命令行上传项目
(如果你使用Windows系统,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文)
通过git init命令把这个目录变成Git可以管理的仓库
$ git init
查看当前项目目录的提交状态
此时如果项目下有未add到暂存区或提交的会以红色字体显示
$ git status
将文件或目录加入到暂存区
add后面的文件是上一步显示出来的红色文件或目录,直接添加即可
执行完add语句后在执行“$ git status”可以发现刚才add的文件变成绿色字体了
注意过滤如下文件(不需要add)
Eclipse请过滤:
*.class
*.apk
bin/
gen/
.settings/
proguard/
Android Studio请过滤:
build/
.idea/
.gradle/
*.iml
local.properties
$ git add .classpath
$ git add .project
$ git add .settings/
$ git add bin/
$ git add src/
将文件或目录提交到本地仓库
-m后面“”里边的内容代表此次提交的说明文字
目前位置只是将项目寄存到本地仓库,接下来还要和远程仓库连接并上传
$ git commit -m "add project"
添加远程库
在github上创建一个同名的项目
点击Create repository ,会发现有两句本地post的提示,分别复制(这里我选的SSH,选HTTPS也可以)
把本地库和github关联
git remote add origin git@github.com:wanganan/ShiPei.git
提交项目到github
将本地代码提交到服务器
-u代表该项目是第一次提交,以后提交通过命令“$ git push origin master”就可以提交了
git push -u origin master
提交完成
push之后稍等几秒,可以看到“Writing objects: 100% (10/10), 3.46 KiB | 0 bytes/s, done.
”就意味着提交成功了。
此时在github重新打开你的项目,可以看到你的项目已经上传上去了。怎么样,是不是很爽呀!
至此,github的上传已经完成了,谢谢观阅
注意:
这里有一个非常坑爹的问题,就是在 git remote add origin git@github.com:wanganan/ShiPei.git 之后可能会有这样的错误提示 fatal: remote origin already exists.
这种情况是因为你的这个项目已经关联过一个远程库了,解决办法如下
$ git remote rm origin
这句的意思就是移除项目与远程的连接。
这个时候在 git remote add origin xxx 就不会报错了。
原文:https://blog.csdn.net/Gold_brick/article/details/52638503
Windows下上传项目到github的更多相关文章
- Git在windows下上传文件至github流程
github是开发者分享的一个平台,这里不多说,想要上传文件至github需要有一个开发者账号,还需要在windows下安装好了git. 做好准备工作之后,接下来操作 一:登录github,创建项目 ...
- Windows如何上传代码到Github
1.首先得安装git客户端 进入官网:https://git-scm.com/ ,点击右侧下载windows版本的软件包,然后双击安装就可以了. 安装完成之后,在开始菜单可以看到,此时,在想上传的文件 ...
- 直接利用本地git上传项目到github
http://m.blog.csdn.net/article/details?id=50441442 本文将详细介绍如何托管你的项目到github上 转载请标明出处: http://blog.cs ...
- 手把手教你用git和SourceTree上传项目到github细解(转)
尊重原创:https://blog.csdn.net/qq_32365567/article/details/52859166 一.引言 我想大家现在都很熟悉github了,也能运用github上开源 ...
- Android快速实现上传项目到Github
本文为skylinelin原创,转载请注明出处! 一.简介 现在在网上浏览关于Git的文章,基本上都是使用命令行(Git Bash),命令行效率是很高的,但是有一定的复杂性,现在我们看如何用AS来讲项 ...
- Android Studio 快速实现上传项目到Github(详细步骤)
前言: 本文主要讲解如何将Android Studio项目上传至GitHub,在此之前,先介绍几个概念. Android Studio:是谷歌推出一个Android集成开发工具,基于IntelliJ ...
- 使用git上传项目到GitHub上
之前的博客有<使用git拉取GitHub上的项目>的文章,那么现在说一下,如何上传项目到GitHub上. 1. Git的.gitignore 文档配置 因为项目中可能有很多的图片还有nod ...
- 使用idea上传项目到gitHub
上传项目到gitHub 创建好后开始提交本地项目代码如图: 选中VCS选中图中的按钮如图所示: 然后再选中Src点中add按钮如图所示: 然后点中commit Directory后 打开终端进行项目根 ...
- 初次在cmd使用git命令上传项目至github方法(笔记)
在一切开始之前,先推荐一个git简易工具书--Git_Cheat_Sheet,非常适合新手.自行搜索即可,也有热心者提供了中文版. 一.下载 Git 从Git官网下载Git安装包 https://gi ...
随机推荐
- pandas模块(数据分析)------Series
pandas是一个强大的Python数据分析的工具包. pandas是基于NumPy构建的. pandas的主要功能: 具备对其功能的数据结构DataFrame.Series 集成时间序列功能 提供丰 ...
- 蓝桥杯 最短路 spfa
问题描述 给定一个n个顶点,m条边的有向图(其中某些边权可能为负,但保证没有负环).请你计算从1号点到其他点的最短路(顶点从1到n编号). 输入格式 第一行两个整数n, m. 接下来的m行,每行有三个 ...
- URAL - 1627:Join (生成树计数)
Join 题目链接:https://vjudge.net/problem/URAL-1627 Description: Businessman Petya recently bought a new ...
- oepncv-学习笔记一
安装opencv文件时若需要cmake编译,如果中间出现 解决办法是: 在opencv的文件中找到包含cmakelist.txt的文件夹,把where is the source code:的路径改成 ...
- python 栈和队列
class Stack: def __init__(self): self.items = [] def isEmpty(self): return self.items == [] def push ...
- 在Linux防火墙上过滤外来的ICMP timestamp
ICMP timestamp请求响应漏洞 解决方案: * 在您的防火墙上过滤外来的ICMP timestamp(类型13)报文以及外出的ICMP timestamp回复报文. 具体解决方式就 ...
- dbms_output.put与put_line
BEGIN DBMS_OUTPUT.ENABLE (buffer_size => NULL);--with no limit on the output. dbms_output.put('a' ...
- 第一章 深入web请求过程
B/S架构的的好处: 客户端使用统一的浏览器(browser).由于浏览器的统一性,它不需要特殊的配置和网络连接,有效的屏蔽了不同服务提供商提供给用户使用服务的差异性.另外一点是浏览器的交互特性使得用 ...
- Eclipse Support UTF-8
1. Windows > Preferences > General > Content Types, set UTF-8 as the default encoding for ...
- mysql 字段为NULL的一些操作
1. 修改字段为NULL update tableName set column1 = null where id = 1 2. 字段是否为NULL (1)字段为空 select * tableNam ...