团队开发/个人开发之git

前言:git是一个代码版本的管理程序,可以创建分支,多人协同工作,自己的分支完成了功能/修改了bug;就可以合并到主分支(或者其他次主分支)

次主分支:这个是我自己的叫法,出现的原因:有时候一个项目由一开始的一个主分支master,因为不同的客户需求(它开始有自己独特的地方),开始并发出两个,三个或者更多个次主分支,同时进行这么多次主分支(每个客户自己的版本)是有些困难的,有时候就会忘记把一个新功能同时同步给某个客户;这里就看怎么把握这个平衡的点了;
由我目前的开发经验来说,还是不要出现3个以上次主分支的好,我们新建一个git仓库给他单独开发

真实开发中的使用(我就主要说windows系统了)

  • 第一步:建立本地(准确说当前电脑)的git账号:这个账号既可以和github的账号关联,也可以和国内的码云的账号关联;这里就不讲了
    • git config --global user.name "你自己的喜欢的名字"
    • git config user.name,查看你刚刚创建的用户名
    • git config --global user.email "一个可以使用的邮箱"
    • git config user.email,查看你刚刚创建的邮箱(这样你本地的git账号的用户名和邮箱就有了)
  • 第二步:创建本地的代码分支,用于工作
    • 第一种情况:你们公司的远程仓库已经新建了一个项目仓库,你是新来的员工/重装里电脑/反正就是你的电脑现在没有这个项目;那么你需要这样做:

    • git clone 远程仓库的master网址,注意在你想要工作的文件下打开gitbash,并执行此操作

    • cd 文件夹名称 进入你本地刚刚拉取的项目文件夹下,再次打开gitbash,会看到此时是 *master:表示当前是主分支

    • git checkout -b 分支名称 创建本地的一个工作分支(一般不在主分支上开发),分支命名规则:dev_名称缩写_模块,注意查看网站里其他人员的分支,不要命名重复

    • git branch,查看当前分支,带有*号的是当前分支,再上一个命令结束后,应该就已经切换到你新建的分支上了

    • git checkout 分支名称,这个是切换分支命令,可以切着玩,不过工作的时候一定要在自己的分支

    • git push -u origin 你创建的分支名字,在远程仓库上创建一个你自己的分支,名字最好和你本地相同;这样是为了你可以先把自己的代码提交到你自己的远程分支,先不合并到主分支,由项目组长检查一下

    此时讲解一下你本地有了:master主分支的代码,和一个空的自己的分支;远程也有一个master和一个你的远程分支;所以需要你将本地空分支拉取一份master主分支代码

    • git pull origin master在本地分支上拉去一遍远程仓库主分支master的代码,以后就在本地分支工作了

    • 第二种情况:一般就是自己的项目了,你突发奇想自己写了点项目,现在想把它放在github或者码云上,那你就先在github/码云上新建一个项目(空的),然后把本地和它关联上就行了,使用这个命令:git push -u origin 项目名;二者好像可以不一样,要不要一样随你

  • 第三步:关于提交代码,注意这些操作是在你本地的个人分支为前提的
    • git pull origin master,提交前先拉去一下主分支上的代码,以避免可能的冲突(另外,如果你是新写的一个模块,没有人写你这部分的代码,而且你也没有修改其他地方的代码,那么可以不拉取主分支),冲突一般要在本地处理好

    • git status,查看本地做了那些修改,红色的都是你本地修改或者添加的内容

    • git add 上面的文件路径,添加文件进暂存区(这个想了解自己查,这里就不解释了),记得一个一个添加,不要提交的修改千万不要提交上去,因为我目前也没改过从暂存区把添加错的文件踢出来,可能有点麻烦

    • git status,添加完成后,在使用这个命令检查一下,这个命令经常使用,有事没事都可以检查一下

    • git reset HEAD 文件路径,这个命令可以撤销未提交(commit之前)的暂存区的里添加错误的文件

    • git commit -m "你想写的一些提交注释说明",还是强调当前是在本地个人分支上操作的,这时就把暂存区的内容提交到分支上了

    • git push origin 你远程分支的名字,然后提交 合并申请/由组长看一下

补充:git checkout /app/xxxx/ad/dfa.php,放弃本次修改

  • 第四步:就可以在网站上创建合并请求了,没问题通过,有问题关闭合并请求,本地重新修改,提交,创建合并请求····

注释:上述过程并没有使用合并分支(merge)和暂时存储(stash)命令,这主要因为是公司团队开发,还是要遵守一下规则;不然分支我能玩出花来

发布了5 篇原创文章 · 获赞 1 · 访问量 123

猜你喜欢

转载自blog.csdn.net/qq_37029718/article/details/104019741