学习 git基础命令

缘起
年后到了新公司,由于个人意愿到了一个海外的项目组,除了自己从Java技术栈转了C#技术栈外,很多技术都是第一次使用,学习压力不小啊.
自己也就先从常用的技术开始学起,比如C#,AngularJS,git.其中在学习git时,同事给推荐了一个网站tryGit,虽然早在13年就自己学了过git的知识,可惜实践的较少,命令也基本忘得差不多了.今天晚上抽时间上来练习了一下,感觉这个网址学习git基本命令还不错.但也发现了些问题,由于照着提示练习的命令,并没有很好的记住.感觉整理出来,当忘记的时候翻出来看一下要比在问谷歌或百度要更快些.于是又照着教程敲了一遍,整理了几个基础命令.
基础命令
git init将当前目录设置成git directory(repository)git status查看working directory和staging area里文件状态.三种状态的文件将被显示出来,分别是untrcked,modified,staged.状态是unmodified的文件不会被显示.git add octocat.txt添加文件到staging area.git commit -m "Add a file"提交文件到git directory.git add "*.txt"添加文件到staging area.git log查看commit日志.git remote add origin https://github.com/try-git/try_git.git添加远程仓库,其中origin 是远程仓库名称.git push -u origin master推送git directory里的代码到远程仓库.其中-u的作用是记录住这个远程仓库,以后再执行推送只需要敲git push.git pull origin master更新代码从远程仓库,其中origin 是远程仓库名称,master是远程仓库分支名称.git diff显示working directory与staging area间文件的差异.git diff --staged (或 git diff --cached)显示staging area与git directory间文件的差异.git diff HEAD显示working directory与git directory间文件的差异.git diff HEAD^显示working directory与上次提交的差异.git diff HEAD~2显示working directory与上2次提交的差异.git diff --stat显示working directory与staging area间文件的差异.但只列出文件名.git reset octofamily/octodog.txt将文件从staging area回滚到working directory中.即将文件混滚到add前的状态.git checkout -- octocat.txt将文件回滚到修改前的状态.即丢弃对文件的修改.git branch clean_up创建分支,其中clean_up是分支名称.git checkout clean_up切换到分支.git rm '*.txt'删除文件.git merge clean_up当前分支合并clean_up分支的代码.如果遇到冲突,需要解决冲突,然后commit后完成合并.git branch -d clean_up删除分支,其中clean_up是分支名称.git push推送代码到远程分支.
结语
会这么几个命令基本上一个人使用git是没有任何问题了,因为不会遇到代码冲突.但是团队使用还是要深入的学习下处理冲突的方法,分支的管理.
这个网址https://git-scm.com有继续学习git的资料.
这个网址https://git-scm.com/book/en/v2能够在线阅读«Pro git».
参考
- tryGit https://try.github.io
学习 git基础命令的更多相关文章
- git 基础命令 学习总结
首先介绍一个git 里工作流的概念: 你的本地仓库由 git 维护的三棵“树”组成.第一个是你的 工作目录,它持有实际文件:第二个是 缓存区(Index),它像个缓存区域,临时保存你的改动:最后是 H ...
- git学习——Git 基础要点【转】
转自:http://blog.csdn.net/zeroboundary/article/details/10549555 简单地说,Git 究竟是怎样的一个系统呢?请注意,接下来的内容非常重要,若是 ...
- linux学习之——基础命令
Linux体系基础命令: Linux是一个命令行组成的操作体系!精华在命令行,岂论图形界面成长到什么水平这个原理是不会变的,Linux命令有许多壮大的效用:从简单的磁盘操作.文件存取.到举办庞大的多媒 ...
- 常用 git 基础命令
git config --global credential.helper store记住密码 git config user.name xxx配置帐号 git config user.email x ...
- Git基础命令的使用——详细教程2
Git安装默认完成后,在左面点击鼠标右键,鼠标右键菜单中会多出来两个选项: a) Git GUI Here <—> 图型界面模式 b) Git Bash Here <—> ...
- git学习------>git commit命令的默认编辑器的修改
今天在新同事的电脑上,用git commit命令帮新同事提交代码的时候,编辑完commit的信息后,居然不记得怎么退出了.蛋疼. 后来百度了一下,原来此时是进入GUN nano编辑器.在这里可以添加你 ...
- [git] 基础命令笔记
--内容整理自廖雪峰的GIT教程-- git status 查看当前工作区状态,显示未跟踪的文件以及未上传的修改记录 git init 使当前文件夹变成Git可以管理的仓库 git add xxx 将 ...
- git基础命令详解
一些必须要知道的概念 git的三个工作区域:工作目录.暂存区.git仓库. 工作目录:其实就是本地文件磁盘上的文件或目录: 暂存区:是一个文件,保存了下次提交的文件列表信息,一般在git仓库目录中: ...
- git基础命令学习总结
git版本升级 git clone git://git.kernel.org/pub/scm/git/git.git 列出所有 Git 当时能找到的配置 git config --list git c ...
随机推荐
- Web API 强势入门指南
Web API是一个比较宽泛的概念.这里我们提到Web API特指ASP.NET Web API. 这篇文章中我们主要介绍Web API的主要功能以及与其他同类型框架的对比,最后通过一些相对复杂的实例 ...
- 你还可以再诡异点吗——SQL日志文件不断增长
前言 今天算是遇到了一个罕见的案例. SQL日志文件不断增长的各种实例不用多说,园子里有很多牛人有过介绍,如果我再阐述这些陈谷子芝麻,想必已会被无数次吐槽. 但这次我碰到的问题确实比较诡异,其解决方式 ...
- [异常解决] windows用SSH和linux同步文件&linux开启SSH&ssh client 报 algorithm negotiation failed的解决方法之一
1.安装.配置与启动 SSH分客户端openssh-client和openssh-server 如果你只是想登陆别的机器的SSH只需要安装openssh-client(ubuntu有默认安装,如果没有 ...
- CSharpGL(37)创建和使用VBO的最佳方式
CSharpGL(37)创建和使用VBO的最佳方式 开始 近日在OpenGL红宝书上看到这样的讲解. 其核心意思是,在创建VBO时用 glBufferData(GL_ARRAY_BUFFER, len ...
- Java模块化规范之争(转载)
经过近20年的发展,Java语言已成为今日世界上最成功.使用的开发者人数最多的语言之一,Java世界中无数商业的或开源的组织.技术和产品共同构成了一个无比庞大的生态系统. 与大多数开发人员的普遍认知不 ...
- iOS实现UICollectionViewDataSource与Controller的分离
之前每次用到UICollectionView的时候都会都需要在Controller里面去实现DataSource & Delegate方法 单独Delegate方法还好不是很多, 但是再加上D ...
- SVN源代码的版本控制系统使用简介
SVN是以个开放源代码的版本控制系统,当前最流行的版本控制系统,GIT是近段时间刚兴起的. 下面开始介绍如何安装也配置 1先下载或者从别的地方弄一个安装包(本人是64位的,32位的就用32位的安装包) ...
- Windows下MySQL的常用操作
1.MySQL关闭与重启 1.MYSQL服务 我的电脑——(右键)管理——服务与应用程序——服务——MYSQL——开启(停止.重启动) 2.如果你没安装系统服务,可在命令行模式定位到mysql下的bi ...
- JS将秒转换为 天-时-分-秒
记录一下,备忘.. function SecondToDate(msd) { var time =msd if (null != time && "" != tim ...
- 【干货】用大白话聊聊JavaSE — ArrayList 深入剖析和Java基础知识详解(二)
在上一节中,我们简单阐述了Java的一些基础知识,比如多态,接口的实现等. 然后,演示了ArrayList的几个基本方法. ArrayList是一个集合框架,它的底层其实就是一个数组,这一点,官方文档 ...