使用pycharm或idea提交项目到github
pycharm和idea的操作方式几乎一样,所以下面就以pycharm为例来介绍。
安装git
https://git-scm.com/download/win 官网,下载慢,需翻墙
https://github.com/waylau/git-for-win 提供国内下载,下载快,与官网同步更新
下载好之后,双击安装,一路默认安装即可(安装路径根据自己的需要调整)。
生成ssh密钥对
进入用户目录下的.ssh目录,没有就新建一个;
鼠标右键选择 "Git Bash Here",打开git命令行;
输入如下命令:
ssh-keygen -t rsa -C "你的github邮箱账号"
遇到提示信息直接回车即可(为了方便,这里不设置密码,改密码是ssh提交时的密码,该密码与github无关)。
完成后,在用户目录下的.ssh目录下会生成两个文件:
添加公钥到github
登录github,找到如下入口:
打开新的页面如下,找到"New SSH key"
在新的界面中,输入title,这里随便输入什么都行,可以是你的计算机名称;然后复制之前生成的文件id_rsa.pub中的所有内容,粘贴到key的文本框里,点击"Add SSH key"。
配置pycharm中的git
打开pycharm的settings界面,选择 Version Control-->Git,配置好git.exe的路径,点击Test,弹出git的版本号并提示成功,就说明git在pycharm中配置好了。
配置pycharm中的github
打开pycharm的settings界面,选择 Version Control-->GitHub,勾选下方的"Clone git repositories using ssh",超时时间可以设为10秒,以上设置完后,点击右上方处的“+”号
弹出如下界面:
输入GitHub的帐号和密码,然后点击Log In。当然,也可以点击Enter token链接,切换为使用token绑定的界面,如下:
token的生成方式如下:
1、登录github.com,找到Settings,点击进入settings界面
2、选择“Developer settings”
3、选择"Personal access tokens",在打开的界面上点击“Generate new token”
4、Note随便填,比如填写你计算机的名字,或你自己的名称;scopes的选择可以用来控制token的权限范围,如果是我们自己用,那么就全选,完成后点击最下面的“Generate token”。
5、然后你将看到如下界面,红框中的就是token,注意划蓝色线部分的内容,这里告诉我们现在就要复制token,保存到你的计算机上,因为以后你在这里将只能看到token的名字,而看不到其内容。
6、有了token,将其粘贴到pycharm中就完成了使用token和github的绑定方式。
安装.gitignore插件
打开pycharm的Settings界面,找到Plugins选项,在其右侧选择Marketplace,然后在搜索框中输入“.ignore”,点击安装即可。
项目根路径下创建.gitignore 文件,并编写内容
该文件的作用就是排除不需要纳入版本控制的目录或文件,比如pycharm自己的.idea目录,以java项目为例,除了.idea目录,我们还想将.class和.jar文件排除在版控外,那么就如下编写即可:
.idea/
*.class
*.jar
创建项目的本地git仓库
创建好之后,打开项目的文件夹,选择查看隐藏文件,会看到多出了一个.git目录,就说明git仓库创建好了。
add to vcs
此时点击"Version Control"打开版控界面,点击左侧的刷新按钮,此时会看到"Unversioned Files",右键点击该行,将没有加入版控的文件通过"Add to VCS"选项添加到暂存区,下图为示意图,真实情况下,项目的文件可能会有几十到几百个。
commit
添加到VCS的文件,会出现在Default分类下,右键点击Default,选择commit选项,提交所有文件。
打tag
默认情况下,目前我们只有一个master分支,上面所有的修改都在该分支下进行,本文不做其他分支的讲解,这里只说明如何给master分支打tag,以便在github的release界面下看到发布的稳定版项目。
点击"Terminal",打开命令行面板:
然后输入命令:git tag -a v0.2.4-201908211120-SNAPSHOT,会弹出一个文档让你写入本次项目的更新内容,写好保存,关闭文档即可。此时再次执行命令:git tag,会看到刚才打好的tag版本:
push
切换回Version Control的面板,使用快捷键"ctrl+shift+k",打开push界面:
注意勾选Push Tags,否则刚才打的tag不会提交到github上,然后点击Push即可。
github上查看提交的项目和tag
可以看到除了项目的master分支,在release选项卡上多了一次发布,点击”release“进去的界面如下:
我们以后再对master分支做的修改,将不会影响这次打的tag版本。
注意事项
1、如果push的时间很长,甚至超时导致报push被拒绝的错误,请检查是否项目中有很多大文件,尽量将这些大文件利用.gitignore 文件排除在版控范围外。
2、如果提示没有权限,请检查ssh密钥对是否生成正确,是否在github网站上添加正确。
ok,本篇就这么多内容啦,感谢阅读O(∩_∩)O,88
使用pycharm或idea提交项目到github的更多相关文章
- pycharm 使用Git提交代码到Github
pycharm 使用Git提交代码到Github pytharm 创建django项目,提交到github总是失败,在github创建项目拉下来后项目层级会多一层,为此查了一些资料,亲测如下方式可行. ...
- git 命令提交项目到github
git 命令提交项目到github步骤如下: 1.使用git 命令客户端进入项目根路径,输入 git init 命令,创建github本地根目录 2.把文件加入到本地项目 git add . ,如 ...
- 解决提交项目到GitHub,报错Please tell me who you are的问题
描述: 在第一次提交项目到GitHub时,出现了以下问题 看了一下错误原因:Run git config --global user.email "you@example.com" ...
- Git之Eclipse提交项目到Github并实现多人协作
一.Eclipece提交项目到Github 见 eclipse提交项目到github 二.利用github组织实现多人协作 1.新建组织: New organization
- Git提交项目到GitHub
一.GitHub新建项目 1.进入Github首页,点击New repository新建一个项目 2.填写相应信息后点击create即可 Repository name: 仓库名称 Descripti ...
- vs2013提交项目到github
提交项目之前必须先安装Git,下载地址:https://git-scm.com/download/win 1.登录Github后,在顶部导航栏选择New repository: 2.打开Create ...
- Hbuilder提交项目到GitHub出现cannot open git-upload-pack
问题描述 Hbuilder上传本地项目到GitHub时是通过下载的Egit插件,然而提交代码时出现下图问题 网上有说添加http的sslVerify=false,然并卵. 解决方案 不用hbuilde ...
- eclipse提交项目到github
1.在https://github.com new repository 2.在eclipse中new project 比如:Test项目 3.右击"Test"->Te ...
- 提交项目到Github
create a new repository on the command line git init git add README.md git commit -m "first com ...
随机推荐
- 如何使用Git命令克隆仓库代码
今天我的电脑装了新系统,刚装了Git到电脑上,突然有一个大胆的想法,以后不适用可视化工具了. 要逐步锻炼我的命令的操作能力,不能太依赖可视化工具. 今天先记录一下如何使用git命令克隆仓库代码 git ...
- 关于Python中的错误与异常,你是否了解的够仔细?
每次版本结束都描述这着同样的错误,相似的问题,但始终没见解决.所以今天,我就来总结下Python的错误与异常! 异常与错误 错误 语法错误 可以通过IDE或者解释器给出提示的错误 opentxt('a ...
- 实例详解——编译器命令#pragma section作用于函数时作用域是否覆盖到其子函数
在之前的博客[链接脚本(Linker Script)应用实例(一)使用copy table将函数载入到RAM中运行]中,我们第一步使用#pragma section命令将PFlashProgram函数 ...
- NumPy 学习 第三篇:矢量化和广播
矢量化 矢量化是指用数组表达式替换显式的for循环.在Python中循环数组或其他跟数组类似的数据结构时,使用循环会涉及很多开销.NumPy中的矢量化操作把内部循环委托给高度优化的C和Fortran函 ...
- 洛谷 CF402A Nuts 题解
本蒟蒻又来发题解啦! 这题是个紫题? 好吧,恶意评分可海星? 回到正题 这题很明显是贪心啊: 有a个坚果,b个隔板,x个隔板,最多分成v个区间. 那么我们的贪心策略是: 如果一共使用的挡板小于x,且当 ...
- IPV6-ONLY
1.ipv4地址已经耗尽,未来可能只支持ipv6-only. 2.在一个纯IPV6环境下,路由器会自动将IPV4地址转成IPv6地址. 苹果这样要求,对于大多数开发者而言,并不困难.目前大多数应用无需 ...
- ST MCU的UID
ST MCU芯片中的绝大部分都内置一串96位唯一标识码[unique ID].时不时有人问起这个东西,尤其最近感,觉询问它的人甚是热闹.这里跟大家一起简单分享下. 上面说了ST MCU芯片中的绝大部分 ...
- Balls in the Boxes
Description Mr. Mindless has many balls and many boxes,he wants to put all the balls into some of th ...
- python金融应用(二)基本数据类型和结构
一.基本数据类型 1.整形 a=10 type(a) Out[75]: int a.bit_length() #字节长度Out[76]: 4 整形相除会返回整形,想要返回浮点数,需要用浮点数相除1./ ...
- LAMP两种模式
[LAMP] Linux(Centos)LAMP环境搭建,LAMP源码安装及LAMP架构原理详解 Wish_亮关注2人评论9469人阅读2018-08-20 01:33:10 本章blog主要介绍 ...