git 基本操作

1、git init 在一个文件夹下执行该命令,对该文件夹下的内容进行管理。在该文件夹下会创建一个隐藏的目录.git

2、git status 查看文件夹下内容的状态,没有更改的则什么也没有,有更改的,则会显示红色额,表示该文件被更改了。

3、git add .....  如果要对该文件进行归档,则添加上该文件。添加之后该文件变绿,这表示会对该文件归档。

4、git add .  表示添加全部文件

在git commit 之前需要 执行

git config --global user.email "you@example.com"
git config --global user.name "Your Name"

清楚是谁执行的提交命令。

5、git commit -m '详细归档说明' 创建一个归档的版本,归档说明尽量详细。

1、git log 查看现在的版本到以前的归档的记录。

git log --pretty=oneline  在一行上显示

2、git reflog 这个查看更全面,会找到所有的归档记录。

3、git reset --hard   回滚到某条归档记录。

向前回滚一个版本:

git reset --hard HEAD

注意:git checkout file 将在工作区中没有提交的代码撤回,git checkout 分支名称  切换到指定分支;

工作区和库是两个不同区域,库有两个区域,暂存区和存储区。

git 分支开发

1、建立分支

在一个分支或者主库分支上执行该命令

git checkout -b dev 拷贝当前分支代码到dev分支,并切换到dev分支。相当于下面两条命令。

git branch dev 创建分支dev,并拷贝当前分支代码到dev

git checkout dev 切换到分支dev

然后在该分支上开发,提交代码,和原来的分支并行。

2、当分支开发完成需要上传修改后的功能到主分支,在主分支上执行

git merge dev

如果主分支包含于dev分支,就是dev拷贝主分支后主分支没有被更改,则执行会直接成功,否则需要在分支上合并上主分支改变的内容,再在主分支上执行merge操作,或者直接git status 查看文件不同之处,合理修改提交也可。

分支操作的常用命令:

git branch

git checkout 分支名称  切换到指定分支

git branch dev  创建分支dev

git branch -m 分支名称  创建并切换到指定分支

git branch -d 分支名称  删除分支

git merge 分支名称  在该分支上合并指定分支

git stash运用

这种情况感觉用得会不是很多,而且在公司中主分支不会用。

这种情况一般用分支操作会更好,因为在后面执行 git stash pop 后,因为两边都有更改,因此会有冲突,需要手动合并代码,然后再提交,解决冲突,这时说不定当时git stash 保存的功能还未开发好,放在主库上这样不是很好。

git stash 运用过程

1、git stash 保存当前的未提交的开发代码,相当于回到分支最后提交的状态,保存了在这之后开发的功能

2、在最后提交的代码上修改存在的问题,最后提交该问题修改完成后的版本

3、git stash pop  将保存的状态释放出来,这时,由于最后的版本,和释放出来在工作区上的存在冲突,会让修改冲突,保留全部内容,后再提交,git add .  git commit -m '' 当然更改后,可以再在以前的基础上修改增加功能再提交

4、结束(相当于在该分支上最后提交的两次修改的结果)

git和github合用的第一种方式:

先在github上创建了仓库,再将仓库拷贝出来,进入,再在这个仓库中创建项目。

1、在网上的github仓库中创建一个仓库  hello_word

2、在自己的计算机本地创建一个文件夹,在该文件夹下打开git管理的命令行工具,在命令行工具上执行下载github上创建的仓库。

git clone https://github.com/angelo6868/hello_word.git

将网上仓库克隆到本地

3、cd切换到仓库目录下,此时不用执行git init 操作,相当于已经执行,对该仓库进行了管理,在该仓库的目录下,创建项目,即可对该项目进行管理。

4、git add .    git commit -m '' 这样在本地仓库中进行管理起来

5、git push -u origin master  这样提交同步到远程仓库中

第二种方式:

先在本地创建项目,用git进行管理,再上传到github上,先在本地上传,再执行下面两条命令

1、 git remote add origin https://github.com/angelo6868/git_test1.git

2、git push -u origin master

git版本控制工具的更多相关文章

  1. Git版本控制工具(三)----远程仓库GitHub的使用

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  2. git版本控制工具(二)----本地版本库的常用操作

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  3. Git版本控制工具(一)----git的安装及创建版本库

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  4. Git 版本控制工具(学习笔记)

    GIT(分布式) 一.Git 初始版本控制工具 1. 安装Git Ubuntu系统下,打开shell界面,输入: sudo apt-get install git-core  之后回车输入密码,即可完 ...

  5. 使用Git版本控制工具管理GitHub

      使用Git版本控制工具管理GitHu Git是一个分步式的管理系统:只要上传操作得当,所有的都可以相当于是中央服务器,成员代码共享,A写的代码B也有,一般把一个人当做主机,其他人通过该主机拼装代码 ...

  6. Git版本控制工具学习

    Git代码管理工具学习 分布式管理工具:git 相比较svn它更加的方便,基本上我们的操作都是在本地进行的. Git文件的三种状态:已提交,已修改,以暂存. 已提交:表示文件已经被保存到本地数据库. ...

  7. Git 版本控制工具使用介绍------Windows系统下使用

    Git 是用于 Linux内核开发的版本控制工具.与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持(wingeddevil注:这得分是用什 ...

  8. git版本控制工具基本用法讲解(转)

    一.安装Git 在linux系统使用非常方便,只需要打开shell界面,并输入: ? 1 sudo apt-get install git-core 按下回车后输入密码,即可完成Git的安装.但我们可 ...

  9. Git版本控制工具(1)

    学习Git的最佳资料网站: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/ 这 ...

  10. 再次学习Git版本控制工具

    Git 究竟是怎样的一个系统呢?为什么在SVN作为版本控制工具已经非常流行的时候,还有Git这样一个版本控制工具呢?Git和SVN的区别在哪儿呢?Git优势又在哪呢?下面PHP程序员雷雪松带你一起详细 ...

随机推荐

  1. 关于dede后台登陆后一片空白以及去除版权

    今天家里的电脑上新装DEDE5.7后台登陆后竟然一片空白,装PHPCMS却没有问题.百度了好久,也没找到一个像样的答案,晕死! 看了源码后发现在源码里的类库中很多都是PHP4的语法,var这个函数在P ...

  2. SQL行转列(PIVOT)与列转行(UNPIVOT)简明方法

    原文地址:https://www.cnblogs.com/linJie1930906722/p/6036714.html 在做数据统计的时候,行转列,列转行是经常碰到的问题.case when方式太麻 ...

  3. Data Model for Message Receiver

    1. Physical Data Model 2. SQL Statements drop database MessageReceiver go /*======================== ...

  4. Spark 公共篇-InterfaceStability

    本章内容: 1.源码 InterfaceStability 类包含三个注解,用于说明被他们注解的类型的稳定性. /** * Annotation to inform users of how much ...

  5. python--第八天总结

    一.isinstance(obj, cls) 检查是否obj是否是类 cls 的对象 class Foo(object): pass obj = Foo() isinstance(obj, Foo) ...

  6. james2.3 配置收件 之 MariaDB数据库配置

    james我们公司一直都是使用的2.3这个稳定版本,现在已经有3.0了,不过无所谓,能用就行 基于2.3,来进行一些配置,主要是接受邮件,之前的博文如何安装的,这里不多做介绍了,链接参考:https: ...

  7. 【CFD之道】2017年原创文章汇总

    1 Fluent案例(21篇) [Fluent案例]01 空气流经障碍物 [Fluent案例]02:Tesla阀 [Fluent案例]03:RAE2822翼型外流场计算 [Fluent案例]04:多孔 ...

  8. AI 名校课程&书籍 需要学习

    斯坦福李飞飞-深度学习计算机视觉 http://study.163.com/course/introduction/1003223001.htm 斯坦福李飞飞-深度学习计算机视觉---视频下载 htt ...

  9. MUI框架的缩写输入

    html      上面--代表最小触发字符      下面--代表非必要完整触发字符 组件 触发字符 mDoctype(mui-dom结构) mdo ctype mBody(主体) mbo dy m ...

  10. delphi怎样把子窗体显示在pagecontrol的tabsheet

    https://bbs.csdn.net/topics/391980918 unit Unit1; interface uses Winapi.Windows, Winapi.Messages, Sy ...