pycharm 与 GitHub git 相关配置使用
pycharm 与 GitHub Gitee 配置 使用Git管理项目 利用pip freeze生成requirements.txt文件
20181214 Chenxin
参考:
在Pycharm中使用GitHub http://www.liujiangblog.com/blog/4/
使用Github管理项目 http://www.liujiangblog.com/course/django/115
github
1.设置GitHub用户名,密码
File->Setting ->Version Control ->GitHub 输入用户名密码
2.确认git是否已安装(本地是否已经安装git,如果是pycharm2018版本,默认已经自带了)
File->Setting ->Version Control ->Git
3.可以从已有的github库上进行拉取,或将本地代码Push上去.
VCS->Import into version control ->share project to github->输入远端要新建的仓库名(会自动在远端创建仓库).
然后会在项目的根目录下,自动生成一个.git的目录.
第一次share的时候,如果有报错 fatal: unable to auto-detect email address (got ' ...
说明读取的email地址跟github的不一致,则修改: C:\Users\chenxin\Desktop\RegularBackup\python2018\django\mysite.git\config在末尾添加
[user]
email=chenxin6676@163.com
name=chenxin6676
在share过程中,需要勾选上传的文件.
日常操作
commit/commit and push/push
对文件修改后(本地文件发生变化),先在pycharm中右键,Git—>add,提交到暂存区.然后Git—>commit,提交到本地主分支(这一步可以同时选择commit and push). 最后一步是push到github网站上去(也可以通知右键response库里的选项选择push).
gitee
除了github外,可以使用国内的码云gitee.com来创建私有库(由开源中国提供).github上的私有库是收费的,gitee的私有库目前免费.
安装插件
File->Setting ->Plugins->在"Search in repositories"中搜索gitee,安装该插件.
用户名密码,创建Token测试连接(同github1)
File->Setting ->Version Control ->Gitee 点击Test,输入gitee的用户名和密码,会自动生成一个"Token",并提示连接成功.
确认git是否已安装(同github2)
File->Setting ->Version Control ->Git
分享(push)远端(同github3)
VCS->Import into Version Control->Share Project on Gitee 输入远端库名称,及本地显示的Name名称(区分push到哪里的,比如github,gitosc),和描述信息
其他操作
日常提交
VCS->Git->commit/push 进行本地提交或提交到远端
如果不想用gitee了,可以通过
VCS->Git->remotes 列出当前的远端push信息,手动删除掉gitee对应的配置就可以了.这样默认push又会提交到github.
使用Git管理项目
创建requirements.txt文件(pip freeze > ./requirements.txt)
requirements.txt文件是一个项目的依赖文件,可以通过下面的方式自动生成:进入虚拟环境,切换到项目根目录下,使用pip工具的freeze参数。
(mysite_env) ...mysite> pip freeze > ./requirements.txt
打开requirements.txt文件,其内容如下:
asn1crypto0.24.0
cffi1.11.5
cryptography2.4.2
Django1.11.7
...
他人如果拷贝了我们的代码,要安装第三方库依赖的话,只需要:pip install -r requirements.txt 就可以一次性安装好所有的库(插件)了。
创建.gitignore文件(安装".ignore"插件)
在项目代码中,有一些文件是不能上传的,比如密码文件、数据库文件、核心配置文件等等,还有一些是不用上传的,比如临时文件。为了让git自动忽略这些文件,我们需要创建一个忽略名单。
在项目根目录下新建一个.gitignore文件,这里需要在Pycharm->File->setting->Pluging下安装".ignore"插件.
在.gitignore文件里写入下面的内容:
.idea
settings.py
db.sqlite3
mysite/pycache/
这些文件将不会上传到Github中,也不会进行版本管理。
特殊文件处理(密钥,密码等)
settings.py文件,如果没有这个文件是无法运行Django项目的,但是settings中又可能包含很多关键的不可泄露的部分.还有数据库的IP/port、用户名和密码,邮件发送端的用户名和密码,这些都是绝对不能泄露的。那怎么办呢?简单!复制settings文件,并重命名为settings.example.py文件,放在同一目录里,把敏感信息、密码等修改或删除.
添加说明文件和许可文件
通常我们要给Github的仓库添加说明文件和许可文件。在项目根目录下创建一个README.md文件,这是markdown格式的。在文件里写入项目说明,使用方法,注意事项等等所有你认为需要说明的东西。对于许可文件LICENSE,如果你暂时不想公开授权,或者不知道用哪种授权,可以暂时不提供。
创建分支,commit分支,push分支,合并分支,push主分支
参考: https://www.cnblogs.com/caseast/p/6085837.html
在pycharm的右下角,或者VCS菜单中选择,创建1个dev分支.然后checkout分支,在分支上完成修改后,commit分支.commit后还可以考虑是否push该dev分支到远端(github上).
然后切换到master分支,选择VCS->Git->Merge Changes,选择对应需要合并到master上的分支"Branches to merge",比如dev分支.完成合并.
合并完后,可以push该master分支到远端.
跟git相关的功能菜单:
主界面右下角Git版本选择(master还是dev).
主页面上方VCS菜单.
查看更改记录
本地修改记录:
各个文件右键里选择"Local Histroy"->"Show Histroy"查看本地修改历史记录(每次操作与当前情况的对比,比较详细) 或 右键"Git"->"Show History"查看该文件commit的记录,在每个记录上右键"Show Diff",显示每次与上一次的对比.
每次commit记录:
主界面下方在"Terminal"旁边的"Version Control"->"Log".