下面以一个最简单的开发过程,呈现git最基本的操作命令


1、下载代码(以code命名仓库为例)

git clone xxxxx/code.git

cd code

2、查看所有分支

git branch -av

3、切换已经存在的分支

git checkout xxx

git branch #再次查看分支

4、从master新建分支,并且切换到新分支(加上-b选项)

git checkout -b feature-wdw-login master

git branch    #再次查看分支

5、在个人分支增删改代码,按照平常编写代码

撸代码
调试代码
编写单测
终于调通准备提交代码,往下看

6、提交代码分4步

#查看有那些文件是被你修改,以防修改不必要文件(有改动文件,显示红色)
git status

#添加准备要提交的代码到暂存区(有改动文件,这时候显示绿色)
git add xxx.c
#再次查看添加了什么,确保正确
git status

#提交代码到本地仓库(注意这个时候还未上传代码到git服务器)
git commit -m "[ADD]: 提交新代码xxx.py"

#真正提交代码到远程仓库,这里提交到个人分支aa
git push origin aa

常用命令


下载代码: git clone <some-git-url>

分支操作: git branch 与 git checkout

查看状态: git status

添加到暂存区: git add <some-file>

从暂存区提交: git commit -m 'commit comments'

推送到服务器: git push origin master

从服务器上拉取: git pull origin master 或者 git pull

获取代码


git clone <git-repo-url>

#查看分支,当前所在分支前面带 *

git branch -v

#从当前分支新建一个分支并切到新分支

git checkout -b <new-branch-name>

#切到另一个已经存在的分支,比如master

git checkout master

git branch -v

基础操作


查看状态

git status

添加/暂存文件

git add <some-file>

查看修改

git diff

查看已暂存的内容

git diff --cached

提交修改

git commit # 或者 git commit -m 'Fix some bugs.'

移除文件

情况一:把文件删掉,Git 不再跟踪

git rm <some-file>

情况二:从 Git 中移除文件但文件本身不删除

git rm --cache <some-file>

如果是要删除文件夹,则需要加 -r 参数

git rm --cache -r <some-folder>

查看修改


查看提交历史

git log

git log -p # 查看内容差异

git log --stat # 查看统计信息

一行显示日志信息

git log --pretty=oneline

查看某用户的提交

git log --author='Tony Wu'

#如果配置按照git-bash安装指引配置了简写的,可以试下git lg查看提交图谱,信息更简洁丰富,如下查看最近20条提交

git lg -20

撤销修改


取消上一次提交

git reset HEAD^

修改上一次的提交

git commit --amend

撤销文件在暂存区的修改(回到工作区)

git reset HEAD <some-file>

撤销文件的修改(恢复原状)

git checkout -- <some-file>

撤销所有文件的修改

git checkout -- .

远程仓库拉取与推送代码


查看远程仓库

git remote # 显示远程仓库

git remote -v # 显示远程仓库详情

git remote show origin # 显示 origin 远程库的详情

从远程仓库获取,同步

git fetch <some-remote-branch>

从远程仓库拉取

git pull origin master

推送到远程仓库

git push origin master

git基本操作(入门)的更多相关文章

  1. Git基本操作和GtHub 特殊技巧

    <GitHub 入门与实践> 笔记 了解GitHub Git 和 GitHub 的区别 在Git中,开发者将源代码存入名为"Git仓库"的资料库中,并加以使用.而Git ...

  2. GIT 从入门到放弃大整理

    跟着廖雪峰学 GIT  http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 GUI f ...

  3. 第三章 Git的入门 - 读书笔记

    Android驱动月考3 第三章 Git的入门 - 读书笔记 对于Github,这是全世界最大的开源平台,你可以把你做的项目在这里开源,把你发现的一些新技术在这里开源,向全世界的开发者们分享,大家都彼 ...

  4. git简单入门

    git简单入门 标签(空格分隔): git git是作为程序员必备的技能.在这里就不去介绍版本控制和git产生的历史了. 首先看看常用的git命令: git init git add git comm ...

  5. Android系统移植与驱动开发--第三章 Git使用入门及在学习中有感

    第三章 Git使用入门 使用Git的目的是减少各种版本的Linux的压缩大小,提供源代码在Linux上进行编译. 在这一个章节中,其实就是关键步骤的操作,虽然Git与我们学习的android没有很大的 ...

  6. 让 Python 带你进入开源的世界——Git 从入门到与他人协作开发

    让 Python 带你进入开源的世界--Git 从入门到与他人协作开发 我认为开源社区中有很多优秀的资源,并且可以帮助进阶中的程序员提高编程能力和水平.所以,我发起了<HelloGitHub&g ...

  7. Git快速入门进阶篇

    本文接着Git快速入门篇,继续探讨Git在管理项目中的一些应用. 远程仓库的使用 查看远程仓库 查看你已经配置的远程仓库服务器,可以运行 git remote 命令.指定选项 -v,会显示需要读写远程 ...

  8. git快速入门 push/clone/reset/merge/切换分支全都有

    本文介绍git快速入门,从安装/创建init / 发布push/版本回退reset / branch分支切换/合并分支merge 这些基本的操作都有涉及,方便新人快速入手,有需要的朋友mark一下.首 ...

  9. Git学习系列之Git基本操作拉取项目(图文详解)

    前面博客 Git学习系列之Git基本操作推送项目(图文详解) 当然,如果多人协作,或者多个客户端进行修改,那么我们还要拉取(Pull ... )别人推送到在线仓库的内容下来. 大神们是不推荐使用 pu ...

  10. Git学习系列之Git基本操作推送项目(图文详解)

    前面博客 Git学习系列之Git基本操作提交项目(图文详解) 如果完成到一定程度,那么可以推送到远端在线仓库. 推送之前,请确保你已经设置了全局的 user.name 和 user.email, 如果 ...

随机推荐

  1. Tomcat错误信息(服务器版本号)泄露(低危)

    一.问题描述Tomcat报错页面泄漏Apache Tomcat/7.0.52相关版本号信息,是攻击者攻击的途径之一.因此实际当中建议去掉版本号信息. 二.解决办法 1.进入到tomcat/lib目录下 ...

  2. HTML DOM对象的属性和方法介绍(原生JS方法)

    HTML DOM对象的属性和方法介绍 DOM 是 Document Object Model(文档对象模型)的缩写. DOM(文档对象模型)是针对HTML和XML文档的一个API(应用程序编程接口), ...

  3. Apache 处理svg工具包Apache(tm) Batik SVG Toolkit

    Apache™ Batik SVG Toolkit¶ Overview¶ Batik is a Java-based toolkit for applications or applets that ...

  4. Meteor教程

    Meteor 是一个构建在 Node.js 之上的平台,用来开发实时网页程序.Meteor 程序位于数据库和用户界面之间,保持二者之间的数据同步更新. 因为 Meteor 是基于 Node.js 开发 ...

  5. 基于51单片机的CAN通讯协议C语言程序

      //-----------------------函数声明,变量定义-------------------------------------------------------- #includ ...

  6. leetCode 94.Binary Tree Inorder Traversal(二叉树中序遍历) 解题思路和方法

    Given a binary tree, return the inorder traversal of its nodes' values. For example: Given binary tr ...

  7. MySQL5.6 怎样优化慢查询的SQL语句 -- 慢日志介绍

    近期有个开发团队抱怨我们平台包括的mysql cluster不行,总是报mysql的"heartbeat Error".分析了他们收集的日志.没有发现mysql cluster节点 ...

  8. VC++ error C1083 无法打开包括文件 fstream.h,iostream.h怎么办

    1 如下图所示,VS中不支持iostream.h和fstream.h的说法   2 改成下面三行就可以编译通过了 #include<iostream> #include <fstre ...

  9. 关于disable和readonly

    我们在做网页时,难免的会因为权限或者各种原因,想让使用者看到,但是却不想让用户去对值进行更改,我们有两个选择 一.我们使用disabled将文本框禁用掉. 二.我们使用readonly使得文本框只能读 ...

  10. 【Mongodb教程 第十七课 】MongoDB常用命令 数据库命令 集合操作命令

    (1)数据库命令 a)添加用户 db.addUser(‘name’,’pwd’) b)删除用户 db.removeUser(‘name’) c)用户验证 db.auth(‘name’,’pwd’) d ...