1)在本地创建ssh key
打开终端,输入以下命令行
$ ssh-keygen -t rsa -C"your_email@youremail.com"
后面的your_email@youremail.com改为你的邮箱。我的邮箱是lilu@1ke.co,也是在github上注册的那个邮箱:
直接点回车,说明会在默认文件id_rsa上生成ssh key。
然后系统要求输入密码,直接按回车表示不设密码
重复密码时也是直接回车,之后提示你shh key已经生成成功。
打开id_rsa.pub,复制里面的key。里面的key是一对看不懂的字符数字组合,不用管它,直接复制。
回到github网站,进入Account Settings,左边选择SSH Keys,Add SSH Key,
title随便填,粘贴key。
2)验证是否成功,在git bash下输入
$ ssh -T git@github.com
回车就会看到:You’ve successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。
3)接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们
$ git config --global user.name"your name"
$ git config --global user.email"your_email@youremail.com"
分别输入上述命令行 回车, 我的界面显示如下
4)配置pycharm
1.进入pycharm的配置菜单
2.选择version control,配置好github相关内容
3.接下来配置Git
github的配置只是告诉了pycharm你的账号和密码,pycharm还不知道如何进行版本控制操作,它底层还是需要调用git的功能的。
5)建立远程仓库并提交代码
1.点击pycharm顶部的VCS选项–>Import into Version Control -->Share Project on GitHub(共享项目)
2.建立一个新的仓库,点击share按钮
3.择你要上传的文件,一般是直接全部上传,当然也可以取消那些没必要的文件。输入提交信息,点击OK
根据你的网络情况和文件大小,pycharm将文件传输给github,成功后会弹出小的提示消息
4.上传新增代码或者修改代码
(1)右键–>Git–>Add,增加后文件名会变绿
(2)提交–选择Commit file
(3)commit and push
6)在github中查看上传的新仓库
1.进入github官网,登录自己的账号
2.图中红框是我们刚才通过pycharm建立的新仓库,点击进去,可以看到如下图,整个pycharm项目的所有文件都在里面:
7)使用pycharm克隆github仓库
1.前面说的是上传,那么下载呢?在VCS菜单中:–>Checkout from Version Control -->GitHub
2.输入密码
3.pycharm会登录你的github账户,读取你的仓库信息,你可以从下拉框中选择仓库,也可以在directory name框内直接输入仓库名。点击clone,pycharm就自动下载仓库内容了
8)在pycharm内进行git的相关操作
1.以上只是commit和clone的操作,具体的push,add,status等git常用操作都在VCS菜单里的GIT可以找得到
9)颜色指示
如果之前已经成功部署了项目到Github仓库中,可以看到Pycharm中左侧项目栏中的文件有两种颜色,灰色的是已经同步的文件,红色是本地存在但是没有同步到仓库的文件。
这时候如果修改一下其中的代码,比如我的七牛云助手项目的主程序文件QiniuHelper.py,你会发现,这个文件在项目栏中的颜色变成了蓝色,蓝色表示文件有更改且未同步到仓库中。
2. commit
点击菜单栏的VCS->commit。
在commit changes窗口的文件栏中,可以选中的文件表示此次允许commit,稍加观察就会发现,这些文件要么就是之前没部署到仓库中的,要么就是这次有更改的。
取消其他勾选,只选中蓝色的QiniuHelper.py,并在commit message栏中填入此次更新的说明信息。点击下方的commit按钮。稍等几秒,Pycharm就会弹出提示,有1个文件已经commit。
3. push
点击菜单栏的VCS->Git->push。
在弹出的push commit窗口中选择你要部署的项目名称和分支,点击push即可。
等待一段时间,Pycharm会弹出提示,说明文件已经push成功。
这时登陆网页Github,进入你的项目,就可以看到你的文件在几分钟前有更新,并且能看到commit message。