使用git管理项目版本
Pycharm git-创建本地仓库\创建分支\合并分支\回溯版本\加入git后文件颜色代表的含义_python中git显示不同颜色-CSDN博客
主要几个命令:
git status 查看已提交文件
git checkout -b dev 创建并切换到新分支,是各分支的头指针
git symbolic-ref HEAD refs/heads/master 重置Head,是各版本的头指针
和按钮:
commit 提交本次修改
unstage_all_changes 回溯上一版
切换了IDE之后,用vscode,在已经创建过repository的项目下,存在.git文件夹,里面的Head文件包含一条路径:/path_to/Head/master,这里的head是指commit之后会在此处开始接下一个版本,master是默认创建的主分支;
在vscode左栏的第三个选项处,点击commit,会生成一个editmsg,其中的内容即项目中所有的文件,因为是首次提交,所以是从空到初始化的这个文件列表,也可以在git status里查看;此时,所有的文件从changes变为staged changes,似乎是从工作区变为暂存区;
打开的双栏文件可以显示相对为空的情况下,新添加的语句有哪些,这个视图在相应的文件后面备注了index;
当从sourcecontrol-changes-unstage_all_changes,所有文件又回到了changes的状态下,并且(index)的双栏也清空了,相当于是把修改的内容回溯到了之前相对为空的状态;
使用git checkout master 无效(可能是因为本来当前分支就是这样,但是当切换到了dev之后似乎又无法通过此命令切换回来),chechout的作用是使得之后commit的内容会接着该分支;
git checkout -b dev的方式可以在命令行成功运行,此时分支会从默认的master切换回dev;
git symbolic-ref HEAD refs/heads/master 的作用:重置 HEAD 指针到正确的位置,在上述命令无效后使用;
git branch无报错也无反馈;
(RIPU) root@LAPTOP-FG1HMDFP:/home/lin/framework/RIPU-main# git fsck
Checking object directories: 100% (256/256), done.
notice: HEAD points to an unborn branch (dev)
notice: No default references
dangling tree 6d5400c2dab43f32578223b0db1c7fc4440c1e27
(RIPU) root@LAPTOP-FG1HMDFP:/home/lin/framework/RIPU-main# git prune
(RIPU) root@LAPTOP-FG1HMDFP:/home/lin/framework/RIPU-main# git gc
Enumerating objects: 69, done.
Counting objects: 100% (69/69), done.
Delta compression using up to 24 threads
Compressing objects: 100% (65/65), done.
Writing objects: 100% (69/69), done.
Total 69 (delta 12), reused 0 (delta 0), pack-reused 0
参考:Git fatal: 无法解析 HEAD 错误的解决方法|极客笔记
在b站的视频中找到的教程可以对上述命令的操作有个总体的认识,但是具体的按键因为安装插件的版本有所不同;
之所以这里比较重视版本管理,也是因为之前提交报告,改了好几版,发现索引对可读性的影响确实比较大,尤其是给他人看,或者自己隔很久以后看,以前的版本管理,主要依据gitee远程提交那样,但有时是本地的项目,云端没有加载,相关的操作不熟悉,就需要直接使用git,最大的优点就是改动之后会在侧栏标出颜色以和原始文件内容区分,对于不愿意注释的情况下,使用起来很方便,还有就是代码改的改的改废了,没有回溯的机制,特别是逐步回溯的机制是很麻烦,虽然pycharm有查看历史改动的功能,但是使用git似乎是一种更专业的习惯,这样也可以相对提高效率。