美文网首页
Git 工作流

Git 工作流

作者: 旧式样 | 来源:发表于2018-10-31 18:49 被阅读0次

Git 工作流及其上传远程库的一些操作(基于git -bash 命令行)


一,创建本地库并提交文件(如下图):

       1. 在f盘下新建gitdemo文件夹,以下所有操作基于该文件夹

        2.  建demo1文件夹,并新建test.txt,里面加一行git repo1文字

        3. cd gitdemo1 进入该文件目录,git init 初始化该文件目录为git 管理的仓库。

        4. 然后git add 文件名 添加到暂存区,git commit -m "commit message" 提交到本地仓库。

创建本地库并提交

二, 工作流(如下图)

    1. 工作目录下新建demo2

    2. 初始化本地库demo2

    3. 在demo2下新建一个bash_demo.txt(表示第一天需求)并提交

初始化本地库demo2 提交bash_demo需求 提交完成

4. 现在修改bash_demo中的需求,并添加到本地库暂存区

5. 可是现在面临一问题:上一步修改的需求不需要啦,回到第一步的bash_demo的需求,这时就需要其他操作(如下)

6. git reset HEAD bash_demo 回退暂存区的添加到上一次commit

7.这时git status 就会发现在master主分支上,no staged for commit >> 暂存区没有提交,这就表明暂存区已经没有上一次改动的需求啦, 但是此时的工作区还是第二次修改的需求,那怎么回退工作区的内容呢?(看下一步)

8. git checkout -- bash_demo.txt     >>   回退工作区的改动

工作流

9. 上一步中是仅仅把工作区的修改提交到暂存区,如果提交到本地库怎么办呢?

提交回退

10. git log     >>    查到各个commit 的唯一id

11. 得到第一次提交的commit id 

12. git reset --hard commit id   >>   回退到你指定的commit版本

commit回退

13. 这时git status 就可以发现本地库已经回退到第一次需求中

14. 如果此时你的PM跟你说这次的需求不用做啦(该死的PM), 你需要在你的本地库中删掉所有的提交包括需求文档

15. git rm  bash_demo.txt    >>   删除demo2下的bash_demo.txt文档(可是并没有删除本地git库中的提交)

16. git commit  -m "commit message"   >>   提交删除,这样本地库中的bash_demo.txt 提交就已经被删除啦

17. OK 简单的工作流模拟完成

删除commit

三, 提交到远程仓库(github为例)
    1. 首先你需要在注册一个github账号              链接

    2. 因为git本地库和github远程库传输需要SSH协议(或者Http),所以在github中配置你的SSH Key ,而git安装完成后在C/Users/Administrator/ 下,有一个文件夹 .ssh/ , .ssh下有一个叫 id_rsa.pub , 复制里面的内容,放在自己github配置中。

github中配置 查看SSH

3. gitdemo下新建demo3工作目录,添加一个README.md ,并初始化为git仓库

4. t添加提交到本地库

5. 关联远程库   >> git remote add origin git@github.com:*******/***.git,注意在关联之前,你需要在github中new 一个仓库,并得到它的地址,不然无法关联

6. git push -u origin master   >>   git push 表示提交到远程库,-u origin master 表示提交同时关联本地库master分支和远程库master分支(origin 一般表示远程仓库名,你也可以取其他名字)

上传到远程库 上传

7. vim README.md    >>   修改readme.md文件,加上一句second commit  

   *  注意vim 命令 进入命令页面,按下(i ,l)切换到插入界面,按下esc,回到命令界面,按下shift输入命令行 , :wq  保存并退出,回到git 命令行

8. 提交修改,并push到远程库,这是就不需要 -u 后面的一串东西啦

修改并提交

四,克隆和标签

1. git clone 远程仓库地址   >>   从远程仓库clone到本地目录(注意是本地目录,就是没有经过git init的干净文件目录,如果不是干净的目录,则会有错误,因为该本地库并不和远程库相互关联并同步)

2.新建sc_clone 目录并初始化,echo "new code " >> test 并向test中追加一些东西,提交并push到远程库。

标签 提交 push

3. git tag name   >> 为该本地库打标签,git tag 查看所有标签

4. git push origin tagname 提交到远程库

打标签并提交到远程库

五, 分支

      1.  新建branch_demo 目录,并初始化,echo "first branch demo" 到branch.txt中,并提交

新建branch_demo,并初始化 添加内容 添加提交

2. 此时所有的工作都是在master主分支上,正常工作,我们需要自己新建一个分支,在上面工作,然后合并到主分支上(这就是git的强大之处)

3. git branch feature_x   >> 新建分支feature_x

4. git branch  >>  查看分支可以发现此时还在master上 ,,git checkout feature_x  切换到某一点分支。

切换分支

5. 修改内容并在feature_x分支上提交修改。

6. 切换到master分支,并把刚才feature_x合并  >> git merge feature_x

7. 此时查看txt文件的内容,发现已经修改

修改内容并在feature_x分支上提交修改

8. git branch -d feature_x    >> 删除无用分支(该分支已经做完工作,可以删掉)

删除分支


\bullet   该文章只是在学习中的一些小见解和积累,如有错误请见谅

引用视频及文章:https://www.imooc.com/learn/1052

相关文章

  • Git工作流指南

    今天看了一下翻译的git工作流指南,简单总结一下。 Git工作流指南Git工作流指南:集中式工作流Git工作流指南...

  • Git基础

    一、Git 工作流程 本章节我们将为大家介绍 Git 的工作流程。 一般工作流程如下: 克隆 Git 资源作为工作...

  • Git 的各种工作流程

    Git 的各种工作流程 常见的git工作流程 Centralized Workflow (集中式工作流)、Feat...

  • git

    GIT git工作流 集中工作流 功能分支工作流 gitflow工作流master分支存放所有正式发布的版本,可以...

  • Git版本管理软件初识 2019-01-26

    git 是什么? “git是版本控制系统。” git 的工作流程? “有三种工作流程: Git flow Gith...

  • Git工作流

    一、Git常见工作流 Git三种常见的工作流:Git Flow、GitHub Flow 、GitLab Flow ...

  • 基于jgitflow插件使用git flow

    本文使用jgitflow插件简化实现git flow工作流程,具体流程参考Git工作流程最佳实践--git flo...

  • Git使用学习网址

    Git工作流指南 git merge 和 git rebase 小结

  • 实战 | git工作流与团队协作方式

    一、git协作方式 1. git的工作流 目前项目使用的是git来进行项目管理(需要熟悉git的工作流)、git的...

  • 说说git(二)

    上篇文章《说说git(一)》简要的介绍了git的基本信息及要点,本篇主要说下git的工作流,git工作流是git仓...

网友评论

      本文标题:Git 工作流

      本文链接:https://www.haomeiwen.com/subject/tnuntqtx.html