【Python程序开发系列】Git-Clone模式软件开发工作流程和常用命令总结

一、问题

    直接克隆项目和先fork后克隆项目都是使用 Git 进行代码协作的常见方式,它们在不同的场景下有不同的用途和好处。

    直接克隆项目是指先将原始仓库(中央仓库)克隆代码到本地。这种贡献代码方式适用于以下场景:

  • 推送的权限:贡献代码的人有直接push到中央仓库的权限
  • 项目的复杂度:流程比较少,迭代比较少
  • 参与的人数:人数不多

图片

非fork模式下,中央仓库(远程仓库)、本地仓库三者要保持同步(绿色线条的循环)

二、实现过程

2.1 clone

克隆中央仓库:

git clone <remote-url> [<local-directory>]
git clone -b <branch-name> <remote-url

2.2 关联远程仓库、配置连接协议

查看本地仓库关联的远程情况:

git remote -v

配置远程仓库名称和连接协议:

配置ssh协议连接(好处是不需要每次输入密码)
    - git remote add upstream git@github.com:xxx/xxx.git(添加ssh协议)
删除当前远程仓库使用的这种协议连接
    - git remote rm upstream
配置https协议连接
    - git remote add upstream https://github.com/xxx/xxx.git(添加https协议)

2.3 新建本地功能分支并关联远程分支

从这一步到2.6创建PR是一个开发周期

查看分支情况:

git branch
git branch -r
git branch -a

新建本地分支并切换:

git checkout -b feat

创建同名远程分支,并且本地分支关联:

git push --set-upstream origin feat

查看本地分支关联的远程分支情况:

git branch -vv

2.4 开发:pull & stash & pull & add & commit & push

接下来你就可以在这个功能分支做开发,敲代码了。这一步是我们每天重复的工作。

先pull一下中央仓库dev分支保证代码最新:

git pull upstream dev

开敲......

一天结束了,想要提交代码了,将代码放入暂存区stash:

git stash save "save message"

再次pull 主仓库的代码:

git pull upstream dev

这样是不会产生冲突的,这时我们将暂存区的内容拿出来:

git stash pop ( 这一句的作用相当于 git stash apply stash@{0} + git stash drop stash@{0})。

查看变更情况:

git diff

提交到暂存区:

git add .  #这里的点是全部修改内容,或者自行选中单个文件

查看提交状态,显示有变更的文件:

git status

提交到本地仓库:

git commit -m "feat:add UserManagement

将本地的分支推送到自己的远端:

git push origin
# 由于建立了feat分支(本地功能分支)与origin/feat关联,可以直接git push origin

这时如果出现冲突,需要手动解决冲突。

2.5 创建PR,请求合并

当你觉得这个功能开发完成了,这个周期可以结束了。你就可以进行这一步了,创建PR或MR。这里的PR是中央仓库的feat分支-->中央仓库的dev分支

三、小结

        这种模式流程比fork模式简单了一些,只有一个远程的中央仓库,本地仓库直接同中央仓库同步通信,PR是中央仓库两个分支之间的合并。这种模式适合于开发者有向中央仓库直接push的权利,而且合作开发的人数不多的情况下。如果开发人员较多,那么每个人需要在中央仓库新建一个功能分支,这显然就不行了,那就得用fork模式了。

作者简介:

读研期间发表6篇SCI数据挖掘相关论文,现在某研究院从事数据算法相关科研工作,结合自身科研实践经历不定期分享关于Python、机器学习、深度学习、人工智能系列基础知识与应用案例。致力于只做原创,以最简单的方式理解和学习,关注我一起交流成长。需要数据集和源码的小伙伴可以关注底部公众号添加作者微信!

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Python Git常用命令大全: Git是现代化的版本控制系统,常被用于软件开发,协作和管理。它允许在开发过程中创建和管理不同的版本,跟踪文件的更改,以及支持团队合作。Python则是一种广泛应用于开发Web应用程序以及数据科学和人工智能领域的高级编程语言。在使用Git时,Python的代码可以与Git进行集成。这里是Python Git常用命令的大全: 1. git init:初始化一个新的 Git 仓库。 2. git clone:从现有的 Git 仓库克隆项目,可以是本地仓库或远端仓库。 3. git add:将文件添加到 Git 仓库中。git add . 可以添加所有更改。 4. git commit:将所有已添加的文件提交到本地 Git 仓库中。 5. git status:查看当前工作目录中 Git 仓库的状态。 6. git log:查看提交记录。 7. git push:将本地 Git 仓库的更改推送到远端仓库。 8. git pull:将远端 Git 仓库的更改拉到本地仓库。 9. git branch:创建新的分支。 10. git checkout:切换分支。 11. git merge:将一个分支的更改合并到另一个分支。 12. git revert:撤销一个提交。 13. git rebase:将一个分支的修改合并到当前分支。 14. git config:配置 Git。 15. git remote:管理远端仓库。 这是Python Git常用命令的大部分命令,但这并不是全部。在使用GitPython时,这些命令应该是最为重要的。无论是在个人项目中还是团队合作中,这些命令会让你更加高效地使用Git,并保护你的代码免遭不可挽回地灾难。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据杂坛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值