github(二)----------日常生活简单使用git提交打码~~

日常生活使用git提交打码

上一篇已经记录了怎样结合git和github相互使用,这里要记录的是日常开发怎样去管理自己的版本库。

  1. 我们本地的代码库已经从远程克隆下来了,然后我们有新的一期需要需要开发,首先切换到develop分支,把同事的提交的代码pull下来
$ git checkout develop
Switched to branch 'develop'
Your branch is up-to-date with 'origin/develop'.

我这里提示我本地的已经是最新的,如果本地不是最新的

$ git pull
Already up-to-date.
  1. 然后在develop的分支里,创建自己的开发的分支
$ git checkout -b dev
Switched to a new branch 'dev'


$ git branch
* dev
  develop
  master

这里我们的开发分支就创建成功了,这里建议名字取的见名知意哈,然后我们可以在这个分支进行开发

。。。。

  1. 这里介绍简单开发流程,假设现在你已经开发完了且经过自测,并且中途没有需要拉取他人代码,那么我们现在可以提交我们的分支了,首先,我们查看我们这个分支的改动的部分
$ git status
On branch dev
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

        modified:   .gitignore

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        common/
        dao/
        model/
        one/
        pom.xml
        resources/
        service/
        src/
        timer/
        utils/

认真比较,是否需要提交这些代码,这里我们先要提交代码到自己本地,首先加入本地缓存区

$ git add .
warning: LF will be replaced by CRLF in .gitignore.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in common/pom.xml.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in dao/pom.xml.

然后在提交到自己本地的代码库

$ git commit -m "maven modules"
[dev 296e80c] maven modules
 31 files changed, 934 insertions(+), 8 deletions(-)
 create mode 100644 common/pom.xml
 create mode 100644 common/src/main/java/org/common/App.java
 create mode 100644 common/src/test/java/org/common/AppTest.java
 create mode 100644 dao/pom.xml
  1. 这是时候我们需要把我们的分支合并到本地的develop分支上,先切换到本地的develop
$ git checkout develop
Switched to branch 'develop'
Your branch is up-to-date with 'origin/develop'.

这里我的本地的develop依旧是最新的(因为只有我提交代码,哈哈),这里还是更新本地的develop,从远程拉取代码

$ git pull
Already up-to-date.

现在合并dev分支和本地的develop分支

$ git merge  --no-ff -m "merge with no-ff" dev

这里需要注意的是 –no-ff 这个参数
合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。

如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。

说白点,就是如果不带上这个参数,那么我们本地开发dev分支的提交信息就会丢失,那么push到远程的develop分支的时候就会变成一条线,而不是切出来的线再合并回去的形式

image

  1. 现在我们可以查看下提交日志
$ git log
commit 5dd86856aa244f36e8e20eb4ad592c478c1a3dc3
Merge: 296e80c bdf06a4
Author: tangtang <whnlxxbcd@163.com>
Date:   Thu Nov 10 10:44:58 2016 +0800

    merge with no-ff

commit bdf06a4c0ea53ea601a7e93ff336d591d329aae1
Author: tangtang <whnlxxbcd@163.com>
Date:   Thu Nov 10 10:43:50 2016 +0800

    delete src

查看提交记录分支图,可以带上参数

$ git log --graph --pretty=oneline --abbrev-commit
*   5dd8685 merge with no-ff
|\
| * bdf06a4 delete src
|/
* 296e80c maven modules

如果分支线没有乱,那么就可以直接提交到远程develop分支了

$ git push

我们可以上github上确认一遍,我们的提交是否成功~~~~

6.最后可以删除本地分支啦,建议本地保存近期开发的三到五个分支,可以在分支命名的时候带上时间

$ git branch -d dev
Deleted branch dev (was 296e80c).
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值