
上周五,我干了一件特别蠢的事——把项目文件夹复制了七八份:“最终版”、“最终版2”、“最终版3”、“打死也不改了版”……然后这周来上班就忘了哪个是最新的了😂
我同事问我为啥不用Git进行版本管理?
我当时反应是:Git命令行敲半天,PyCharm界面化又很鸡肋.....
当然后来我发现,PyCharm对Git的集成非常友好(我错了😭)。今天我把自己配置PyCharm连接GitHub的经历整理一下,保证你看完也能把自己的代码弄到GitHub上去,以后再也不会乱复制文件夹了
Git是一个软件,你的电脑需要先装上它
打开官网 git-scm.com,它会自动识别你的系统(Windows/Mac),下载安装包。安装过程全点“下一步”,那些乱七八糟的选项一个都不用改
装完之后验证一下:
cmd,然后敲git --versiongit --version如果出来一串版本号,比如git version 2.39.0,就说明装好了

Mac用户可能会遇到:敲完命令提示“没有这个命令”。别慌,系统会自动弹窗让你安装Xcode命令行工具,点一下同意就行
GitHub程序员必备网站了,专门放代码的云端仓库,注册一个账号就能免费使用
网址:github.com,点右上角“Sign up”,填用户名、邮箱、密码。然后去邮箱里点一下验证链接,搞定
其实GitHub有两种方式连:一种是用令牌(Token),一种是SSH。令牌每隔几个月就过期一次,还得去网站重新生成,烦得很。SSH配好之后永远不用再输密码,一劳永逸。
如果你以前折腾过Hexo博客或者别的什么,很可能已经配过SSH了。可以先用下面这个命令测试一下:
ssh -T git@github.com
如果看到Hi 你的用户名! You've successfully authenticated...,说明早就配好了,直接跳到下一步就行

打开终端(Windows用PowerShell,Mac用自带终端)
输入下面这行(邮箱换成你自己的GitHub邮箱):
ssh-keygen -t ed25519 -C "你的邮箱@example.com"
然后它会问你要不要设置密码,直接按三下回车,什么都别输。这样以后就不用每次输密码了。
这时候会生成两个文件,我们需要复制其中一个的内容:
cat ~/.ssh/id_ed25519.pub
屏幕上会显示一串以ssh-ed25519开头的文字,全部选中复制。
登录GitHub网页,点右上角头像 → Settings → 左侧找到 SSH and GPG keys → 点 New SSH key。 标题随便写(比如“我的破电脑”),把刚才复制的那一大串粘贴进去,点 Add SSH key。
最后再测试一下:
ssh -T git@github.com
看到“You've successfully authenticated”就成功了
打开PyCharm,点左上角菜单:
File → SettingsPyCharm → Preferences然后左边找到 Version Control → Git。右边有一行“Path to Git executable”,PyCharm一般会自动帮你填好。点一下旁边的 Test 按钮,如果弹出Git版本号就说明没问题。
再点左边 GitHub,右侧点那个绿色的加号,选 Log In via GitHub。浏览器会弹出一个授权页面,点“Authorize”就行。PyCharm会自动用你刚才配好的SSH连上去,不用再输任何东西。

假设你现在已经在PyCharm里打开了你的项目文件夹,比如叫 autotest-note。
顶部菜单点 VCS → Enable Version Control Integration…,弹窗里选 Git,点OK。


注意:如果你看到一句提示说“所选目录已在Git下”,点 “否”即可。别点“是”,会覆盖掉我们之前的历史记录

返回Pycharm后你会发现项目里的文件名都变成红色了,意思是这些文件还没被Git上传至GitHub

在项目根目录上点右键 → Git → Commit
注意:只有我们刚刚配置了上面的版本管理,才会看到GIt的选项

在弹出来的窗口里,勾上所有你想提交的文件(一般全选就行)。下面有个文本框,让你写“提交信息”,就写 “初始化仓库” 或者更具体一点比如“写完了登录功能”。

然后点右下角的 Commit 按钮。
如果你遇到一个关于“行分隔符CRLF”的警告窗口,直接点 “修复并提交”,它会帮你自动处理不同操作系统换行符问题的,点完就不用管了。

打开GitHub网页,点右上角的 + 号 → New repository。
autotest-note
创建完之后,页面中间会有一个绿色的按钮“Code”,点一下,切换到 SSH 标签页,复制那个地址。它长这样:git@github.com:你的用户名/仓库名.git

我们回到PyCharm,顶部菜单点 Git → Manage Remotes

在Name一栏填 origin(保持默认即可),URL一栏粘贴刚才复制的SSH地址,点OK。

然后再点顶部菜单 Git → Push ,会弹出一个窗口,确认一下分支名(一般是 main 或 master),然后点 Push

PyCharm会在右下角提示“已推送至分支”

等几秒钟,去GitHub网页刷新你的仓库,代码就已经在那里了(最好使用科学网络)

是不是还挺有成就感的😎
以后我们每次修改的代码PyCharm都会以不同的颜色进行标注(区分本地和GitHub云端)

我们还可以根据Git的日志,查看以前提交的版本,甚至回退到以前的版本!这也是Git之所以在代码管理方面这么受欢迎的原因

其实日常就三步:
Ctrl+K,写清楚你改了啥(比如“修复了登录按钮卡死的问题”),点CommitCtrl+Shift+K,点Push,代码就同步到GitHub了如果要和小伙伴一起写,每天开始工作前先点 Git → Pull 拉一下他最新改动,免得覆盖。
1. .gitignore文件很重要
你肯定不想把虚拟环境、缓存文件之类的垃圾也传到GitHub上去吧?在项目根目录新建一个叫 .gitignore 的文件(注意前面有个点),里面写上:
.idea/
__pycache__/
*.pyc
venv/
.env
PyCharm自己的设置文件夹 .idea 千万别传,不然换台电脑就容易出问题。
2. 提交信息别写“更新”
“更新”这种提交信息等于没写。过两个星期你回头看,根本想不起来更新了啥。写具体一点:“修复了搜索结果排序错误”、“增加了导出Excel功能”。以后你会感谢自己的。
3. 遇到冲突别慌
如果你push的时候报错“rejected”,说明远程仓库有新的改动你没拉。执行一下 Git → Pull,PyCharm会弹出三栏对比界面:左边是你改的,右边是远程的,中间是最终结果。点一下箭头就能选择保留哪一边,解决完之后再Commit再Push就行。
我第一次遇到冲突的时候吓得直接删文件夹重来……现在想想蠢哭了。
说实话,这些东西门槛真不高,就是第一次搞的时候要踩几个坑。按着上面步骤走,半小时内你也能把自己的第一个项目扔到GitHub上去。
如果你按教程成功了,欢迎在评论区贴一下你的仓库地址,互相看看。
另外我的GitHub用户名是 dafei-python,加个好友一起学习啊。
觉得有用的话点个赞吧,这么多文字和图片不容易😂