Github
git,github入门,工作和协作必备技术,github提交pr - pull request
你可能会遇到这样的情况,你给同事或者甲方发一个文件,他说再改一下,你就改了再发过去,然后再改再发,等10个版本以后,他回复你一句,“还是第一版吧”.然后你已经忘了第一版是怎么样的,于是你养成了一个习惯

如果几百个文件呢?
于是git就出现了,一个开源的分布式版本控制系统
当你每次修改很多文件提交后,它都会自动创建一个项目版本,你可以通过它看到不同版本文件的不同差异,也可以随时回退到某个提交时的状态,最大的好处是其他人也可以同时修改,别人复制一份过去,改完发给你,会自动合并修改的部分文件.演示一下:

1 | git config --global user.name "用户名" |
1 | git init |
$ git log
commit 515aea2366acff1df4d0fd0912a6e66f66be9ff5 (HEAD -> master)
Author: yjyrichard richardyangjiayu@qq.com
Date: Wed Mar 12 19:25:11 2025 +0800
如果你这个时候改文件内容 改成0.2,vscode新增一个文件会显示绿色,修改一个文件会显示橙色
1 | Lenovo@yangjiayu MINGW64 ~/Desktop/git演示 (master) |
git commit -m “fix(test) : change content” 规范词
可以在vscode下载一个插件Git history Diff 可以看到所有历史提交
git有很多功能,但是都要遇到具体问题才能学会
怎么回退到某个版本?
Lenovo@yangjiayu MINGW64 ~/Desktop/git演示 (master)
$ git reset --hard 515aea2366acff1df4d0fd0912a6e66f66be9ff5
HEAD is now at 515aea2 第一次提交
还有soft模式和mixed模式
reset不仅回退了也把后面的清空了
我们想要在不同版本中切换怎么办?
这时候可以用到分支: branch
分支就是把当前版本复制一份 你可以在第二次提交的时候后git branch 0.2 命令创建一个0.2分支,(0.2为分支名)
git commit 第三次的时候创建0.3 分支,第四次在主分支上
git branch -a 查看所有分支
然后你可以用git checkout命令不断切换分支
不仅仅是可以切换版本,更重要的是你可以继续在主流上继续写代码,也可以在支流上同时写,然后某一天那这两条分支用用git merge [某一分支]合并在一起,这主要是用于团队协作 ,假设在1.0版本的项目中要做五个功能,然后分发给5个小伙伴,他们就在1.0版本上branch出去一个自己的版本,分支就是命令为功能xxx,然后五个人同时开发,到时间后我在主分支上把他们5个人的5个分支都merge过来合并在一起,再提交并使用git tag (tag命令创建固定版本)
打标签生成1.1版本,团队开发互不影响又可以同时协作.
我们不可能在一台电脑上进行开发,所以就有基于GitLab开源git仓库自己搭建,或者用gitee,或者github
github上的Fork相当于把别人的代码库复制到自己的账号中类似于branch,
git remote add upstream 网址 就是添加上游代码库的命令
再用git remote -v
如果你要给别人加功能你可以先创建一个分支
git checkout -b yjy来创建并切换进入yjy的分支
git add .
git commit -m “xxx”
git push -u origin yjy
这个时候我们就来到Pull requests 拉取请求 简称pr
新建pr base就是根源 选择main分支 compare就是比较,选择自己刚刚创建的分支,选择后如果显示绿色对号able to merge是可以合并的意思,那么你就填写pr信息 创建内容然后pr.可以在评论区
如果没有显示绿色对号那就是在你写代码的时候我提交了新的commit,导致版本不一致,这个时候你就需要先更新一下本地版本执行git fetch upstream 从上游更新一下最新代码,然后执行git merge upstream/main,把远程的最新代码合并到自己的分支中,再执行git push推送上去,这个时候快点去pr就行了.
实践是唯一的真理.





