在windows下配置对github的操作--基本操作
一、下载安装 git for widows软件
git for widows 是专门用来在windows下操作 github的软件,提供bash(命令行) 和 gui两种方式。
在bash下,其实就是类似操作一个linux系统,类似于Cygwin软件。
下载地址是 https://git-for-windows.github.io/ ,下载后直接安装后即可。
二、创建ssh公钥
打开 git bash,可以在windos资源管理器中的任何目录下,右键点击,在弹出的菜单选择“Git Bash Here”,如下图:

点击“Git Bash Here”菜单后,会出现一个命令行的gui窗口,类似于一个linux的shell界面。使用cd命令切换当前目录到用户主目录。如下图:

然后 生成 github ssh公钥 。
在$ 下执行: ssh-keygen -C 'email地址' -t rsa
会提示输入文件名,不用管,一路回车,最后会发现。在用户主目录下 生成了一个 .ssh目录,该目录下有两个文件:
id_rsa , id_rsa.pub
注意:如果执行ssh-keygen的当前目录不是用户主目录,需要将生成的上面两个文件拷贝到主目录的.ssh目录下,如果.ssh不存在,需要自己创建下。
然后测试ssh能否登录到 github上。
三、将ssh公钥 上传到github上
前提是github上已经有自己的账号,并且已经登录。
进入 https://github.com/settings/keys 页面, 进行 new SSH key操作。
需要输入两个信息:
1)Title : 因为每台机器都需要一个key,这个名字可随便取,主要用来标识是用的哪个机器。因为你有可能在多态机器上访问github,这样每台机器上都要创建 ssh key并上传到git hub上。
2)key: 将id_rsa.pub 中的全部内容拷贝到文本区中。
点击 Add SSH key 按钮提交保存设置。
下面我们来测试 在git bash中是否可以用ssh连接到 github上。
在$下(可以是任何当前目录下)执行命令: ssh -T git@github.com
如果提示连接成功,就表示没有问题。
四、clone(克隆)github上的仓库到本地
首先要在github上创建一个repository (仓库),这里假设创建的repository为 hello-world。
下面演示如何将github上的这个repository下载到本地。
将github服务器上的仓库clone到本地,有两种方式:
1、ssh的方式
在$下执行命令:git clone git@github.com:账号/仓库名.git
其中账号就是你自己在github上注册的登录用户名,仓库名就是要克隆的repository,如这里的 hello-world
执行上面命令后,会发现当前目录下多了一个 hello-world 目录下,github上hello-world下的文件和目录(如果有的话)也被下载到本地。
因为上面是采用ssh的方式进行clone,因为已经将ssh key传递到github上,这样相关的操作就不用输入用户名和密码了。
2、http的方式
我们也可以采用https的方式进行clone,如下面命令:git clone https://github.com/账号/仓库名.git
执行上面命令,也能把github上的仓库内容下载到本地,但如果后续要进行操作,当涉及到对服务器push变更时,就要输入用户名和密码。
五、操作github(文件操作)
进入当前目录hello-world目录:
1)在hello-world目录下新建一个test1.txt文件
2)在命令行下执行命令 git status 可以看到显示 test1.txt (红色字体)为 untracked
3)执行命令 git add test1.txt 该命令是将test1.txt加到本地git中 这时我们再用git status 查看,发现提示test1.txt (蓝色字体)需要被commit
4)执行命令 git commit -m "备注信息"
5)执行命令git push命令,此命令才真正把test1.txt文件上传到 github上。 这时我们在github网页上就能看到新增的文件。 这时用 git staus查看,提示没有需要commit的内容。
注意,如果是修改文件,操作步骤类似上面。只是上面的 3) 和 4)可以合并成一条命令: git commit -a -m "备注信息"
六、git pull命令
如果在多态机器上开发一个项目时,就需要将git服务器被修改过的内容同步到本地。
这时需要使用 git pull 命令。
在windows下配置对github的操作--基本操作的更多相关文章
- Windows下配置Git多账号github码云
Windows下配置Git多账号github码云 1.配置了全局用户名和邮箱 $ git config --global user.email "你的邮箱" $ git confi ...
- windows下配置ssh访问github
一.说明 一直使用HTTPS的方式访问github的代码,用的时间长了,发现这是效率很低的一种开发行为,因为每次git push的时候都要输入username和password.今天就介绍如何在win ...
- windows下配置lamp环境(2)---配置Apache服务器2.2.25
配置Apache 配置Apache时,先要找到安装目录中的主配置文httpd.conf,使用文本编辑器打开,最好不要使用windows自带的编辑器,可以使用NotePad++, vim,或者subli ...
- 在windows下完美安装GitHub
笔者最近在Windows下安装GitHub,过程中遇到不少问题.现在把安装的详细步骤分享给大家,免得大家走弯路. 笔者安装了GitHub for Windows程序,一切都运行顺利.但事情没有结束,首 ...
- CentOS和Windows下配置MySQL远程访问的教程
CentOS和Windows下配置MySQL远程访问的教程 一.前言 由于实验在云服务器上跑的结果不是很理想.所以,现在切换到局域网服务器.因此,需要重新配置 Windows 服务器和 CentO ...
- Windows下配置Redis,并修改密码
原文:Windows下配置Redis,并修改密码 Windows下配置Redis,并修改密码 下载 Redis Windows版本的GitHub链接,直接下载zip文件解压到指定文件夹下或者下载msi ...
- 在CentOS/Windows下配置Nginx(以及踩坑)
在CentOS/Windows下配置Nginx(以及踩坑) 1. 序言 因为这类文章网上比较多,实际操作起来也大同小异,所以我并不会着重于详细配置方面,而是将我配置时踩的坑写出来. 2. CentOS ...
- windows 下配置 Nginx 常见问题(转)
windows 下配置 Nginx 常见问题 因为最近的项目需要用到负载均衡,不用考虑,当然用大名鼎鼎的Nginx啦.至于Nginx的介绍,这里就不多说了,直接进入主题如何在Windows下配置. 我 ...
- Windows下配置使用 MemCached
Windows下配置使用MemCached 工具: memcached-1.2.6-win32-bin.zip MemCached服务端程序(for win) Memcached Manage ...
随机推荐
- 学习ExtjsFor.NET(第二个案例-Array的Every方法)
Ext.Array.every(Array array,Function fn,Object scope)是一个遍历的方法. array是数组,fn是方法,scope是作用域.every返回true和 ...
- 异常java.lang.IllegalStateException的解决
在初始化viewPagerAdapter时,显示异常.从网上找了找有两类这样的问题,一种是说给一个视图设置了两个父类,如: TextView tv = new TextView();layout.ad ...
- 微型 ORM 的第二篇 DapperLambda性能测试[Dapper比较篇]
由于这周比较忙,所以本来想做的性能测试,一直没时间,想想还是今天给补上吧 由于很多人都担心性能问题,封装之后跟Dapper的性能差距是多少,今天我给出我的测试方法,仅供参考. 创建IDbConnect ...
- Android 中Java和JavaScript交互入门
如何实现JavaScript 和java 交互 实现Java和js交互十分便捷.通常只需要以下几步. WebView开启JavaScript脚本执行 WebView设置供JavaScript调用的交互 ...
- python基础学习笔记1
一.字符串: 1.不可变性.分片赋值对于字符串是不合法的. 2.字符串格式化 % eg: print 'The price is: %d' % 30 print 'The price is: %.2f ...
- POJ 1700 经典过河问题(贪心)
POJ题目链接:http://poj.org/problem?id=1700 N个人过河,船每次最多只能坐两个人,船载每个人过河的所需时间不同,问最快的过河时间. 思路: 当n=1,2,3时所需要的最 ...
- SVD神秘值分解
SVD分解 SVD分解是LSA的数学基础,本文是我的LSA学习笔记的一部分,之所以单独拿出来,是由于SVD能够说是LSA的基础,要理解LSA必须了解SVD,因此将LSA笔记的SVD一节单独作为一篇文章 ...
- ceph启动脚本
放在/etc/init.d/目录下,用法如下: root@u253:~# /etc/init.d/ceph === mon.a === usage: /etc/init.d/ceph [options ...
- Mysql++详解
MySQL++数据库操作(1).mysqlpp::Connection con(false); //定义了mysql连接对象: (2).con.set_option(new mysqlpp::SetC ...
- 【转】CoreData以及MagicalRecord (二)
3. 运行时类与对象 NSManagedObject Managed Object 表示数据文件中的一条记录,每一个Managed Object在内存中对应的实体(Entity)的一个数据表示.Man ...