如果你一直是自己一个人开发,每次的操作都是add commit push,如果这次你想要尝试协同开发,希望我的这篇文章能帮到你。 要进行协同开发,如果你是参与者,那么你需要等待主仓库的所有者同意你进行开发,那么你才可以进行协同开发。
PS : 把拥有原始仓库的操作者称为 master 把 fork 了原始项目的操作者称为 follower
首先到你要操作的仓库进行fork
进入到自己账号下,刚刚fork过来的仓库: 然后在我们本地找个地方打开git bash ,输入命令
git clone < follower ssh>
clone完整个项目后,我们需要添加远程仓库的地址,这样我们才能实时更新到主仓库的更新。
在git bash命令行中输入
git remote add upstream < master ssh>
我们每次在对项目进行修改/新增内容时,最好是先同步一下代码,以免修改/新增完内容后,提交的时候,git提示你此时提交的内容与主分支代码冲突了,需要更新同步一下代码,然后输入完命令后发现,自己写的东西都不见,想哭都不知道怎么哭。
所以,以防万一,我们现在命令行输入:
git remote update
效果大概是这个样子。
紧接着,合并本地的代码,由于我这边的仓库默认是dev分支,所以我的命令是这样的
git merge upstream/dev
同步完代码之后呢,我们就可以对项目进行操作了,个人的建议是,在开发之前,创建一个新的分支,在分支上操作。 因为 follower 是作为 master 合作者的,所以 follower 在开发时最好能建立一个分支,然后在分支上进行开发
在命令行输入命令:
git branch < Branch name>
创建完分之后呢,再输入一行命令:
git checkout < Branch name>
这样就切换到我们创建的分支上面了
我们在分支上进行项目的开发后呢,就可以进行提交了。 在命令行输入命令:
git add .
然后提交:
git commit -m “: memo: update”
在新的分支上开发完后,我们需要回到原来的分支,在原来的分支进行push,但是我们并没有在原来的分支上进行开发,所以需要合并我们刚刚进行开发的那个分支。
git merge < Branch name>
合并完也要remote update一下,以免冲突。
然后就可以进行push了
最后推一下项目:
framework-learning
此项目包含了众多java的知识点,内容包括但不限于 jdk , jvm , juc , linux , mysql , redis , 计算机网络 , Spring , SpringBoot , Mybatis , rabbitmq , tomcat , 数据结构与算法 , 设计模式 ,有兴趣的同学可以看看,star一下。