1、创建一个新的仓库:(选择一个合适的地方,创建一个空目录)
 $mkdir learngit       //learngit是用git新建的一个目录
$cd learngit
$pwd       //pwd命令用于显示当前目录
 
2、通过git init命令把这个目录编程git可以管理的仓库:
$git init
 
3、用git add把文件添加到仓库: (可以一次add多个文件,可反复使用,添加多个文件,其实质是把文件添加到“工作区”的“暂存区”)
 $git add **                 //**是文件名
 
4、用git commit告诉git,把文件提交到仓库,其实质是把文件添加到“分支区”:
 $git commit -m “**说明内容**”         //-m后面输入的是本次提交的说明        
 
5、$git status命令可以随时掌握工作区状态
 $git status      //告诉你有文件被修改过
$git diff      //可以查看修改内容
 
6、$git log 可以告诉我们历史记录,当前的仓库状态 (--pretty=oneline参数可以把历史记录整合到一行)

 $git log                    //告诉我们历史记录
7、HEAD表示当前的版本,上一版本就是HEAD^,上上一个版本就是HEAD^^,上100个版本就是HEAD~100
 
8、$git reset --hard HEAD^ //退回到上一个版本,如果--hard 后面是跟commit id,就可回到该id所对应的状态
 $git reset --hard HEAD^     
 
9、查看该文件的内容
 $cat **             //**是文件名
 
10、 查看命令历史
 $git reflog             //以便确定要回到未来的哪个版本
 
11、撤销修改:
 $git checkout -- **                //把**文件在工作区的修改全部撤销
  ①一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
  ②一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
 
12、删除文件:
 $rm **             //删除工作区的文件
$git rm //删除工作区、暂存区的文件
$git commit //删除分支的文件
 
13、添加远程库:
 $git remote add origin git@server-name:path/repo-name.git             //关联一个远程仓库
$git push -u origin master //第一次推送master分支的所有内容
$git push origin master //此后,每次本地提交后,只要有必要,使用此命令推送最新修改
 
14、从远程库克隆:
 $git clone ***           //***是远程仓库地址
$cd *filename*
$ls
 
15、git中与分支相关:
 $git branch             //查看分支
$git branch <name> //创建分支
$git checkout <name> //切换分支
$git checkout -b <name> //创建+切换分支
$git merge -b <name> //合并某分支到当前分支
$git branch -d <name> //删除分支
$git log --graph //查看分支合并图
$git merge --no-ff -m "说明" <name> //可以用普通模式合并,合并后的历史有分支,能看出来曾经做过的合并,二fastforward合并看不出来曾经做过的合并
 
16、多人协作:
  1、首先,可以试图用git push origin branch-name推送自己的修改;
  2、如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
  3、如果合并有冲突,则解决冲突,并在本地提交;
  4、没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!
  5、如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name。
 

git的一些基本命令的更多相关文章

  1. git 的一些基本命令

    基本命令 1.返回上一级目录:cd ../ 2.进入某一目录:cd git (进入 git 目录) 3. 显示当前路径:pwd 4.显示当前文件目录的文件 : dir 5.新建文件夹:mkdir +文 ...

  2. git第一篇---基本命令

    摘要: (1)用git而不是svn.分布式而不是集中式 (2)名词解释 origin是父目录的意思,master是 一个特殊的分支而已.具体参看做最下边: 1.创建仓库 mkdir git cd gi ...

  3. Git操作流程,基本命令演示

    任务列表: 有一个中央库Center,和三个工作站A,B,C. 初始化时,代码存放在中央库中,A,B,C三个工作站开始工作之前都要首先从中央库克隆一份代码到本地. 第一个任务:A和B合作修复一个缺陷, ...

  4. Git版本控制的基本命令

    安装完了GIT首先要自报家门,否则代码不能提交 git config --global user.name "Your Name" git config --global user ...

  5. Git创建项目基本命令

    前提:先在coding.net上创建项目Paper,并勾选“启用README.md文件”初始化项目. 1.给项目Paper创建版本库(仓库) cd Paper git init 2.把项目文件放到仓库 ...

  6. git安装与基本命令

    一.前言 GibHub的名字源于Git,Git是一个分布式版本控制系统,让程序员团队能够协作开发项目,Git帮助大家管理为项目所做的工作,避免一个人所做的修改影响其他人所做的修改.你在项目中实现一个新 ...

  7. Git(二)_基本命令

    0. 开始查看所有配置:git config --listgit config --global user.name "runoob"git config --global use ...

  8. git 的一些基本命令小结

    Git是目前世界上最先进的分布式版本控制系统 对于git 的用法,本文并不属于教程,只是总结记录一些平时用的简单命令 git的下载地址:https://git-scm.com/downloads 主要 ...

  9. Git:Git入门及基本命令

    Git的结构: Git和代码托管中心 局域网环境下: 1)GitLab服务器 外网环境下: 2)github 3)码云 代码托管中心的任务:维护远程库 本地库和远程库的交互 团队内部协作 跨团队协作 ...

随机推荐

  1. 乐视开放平台技术架构-servlet和spring mvc篇

    在乐视风口浪尖的时候,敢于站出来说我是乐视的而不怕被打脸的,也就是我了.就算我以后不在乐视了,提起来在乐视工作过,我也还是挺骄傲的.因为这是一个有理想,敢拼敢干的公司.想起复仇者联盟里Fury指挥官的 ...

  2. javaSE_06Java中的数组(array)-提高练习

    1.求1!+2!+3!+···+30!的和,定义一个方法 public class Test1{ public static void main(String[] args){ //1.求1!+2!+ ...

  3. 设计模式一:关于C++写观察者模式的一些收获

    先贴上部分代码: #include "stdafx.h" #include<iostream> #include<string> #include<v ...

  4. 一个web应用的诞生(13)--冲向云端

    有句话叫所有的乐趣都在部署之前,也许这个小应用还有很多缺陷,也许它还不够完美,但是,仔细想想,其实没有什么能比自己的网站在互联网中上线更令人满足的了,但是满足的背后,总是存在着很多的风险,以至于几乎所 ...

  5. M41T11-RTC(实时时钟)

    一.理论准备 1. 主要器件:STM8单片机.M41T11时钟IC.32.768kHz晶振等. 2. 外围设备:烧录工具ST-Link/v2.串口.5v供电SATA线. 3. 主要思想:通过单片机对时 ...

  6. iOS enum C方法 DEBUG, RELEASE的隐藏的一个坑

    开发了一个app, 在debug模式下没有任何问题,在release模式下就直接崩溃. 经过一段时间的定位终于定位到如下的这一段代码: E_BZ_TestType type = [dic[@" ...

  7. 移动平台Unity3D 应用性能优化

    WeTest 导读 做了大概半年多VR应用了,VR由于双眼double渲染的原因,对性能的优化要求比较高,在项目的进展过程中,总结了一些关于移动平台上Unity3D的性能优化经验,供分享. 一.移动平 ...

  8. MVC 树节点Table格式授权

    这几夜心里颇不平静, 奈何 JS水平有限,前台效果耗时四天,后台传值一天,直至昨夜丑时测试初步完成,其实就是一个给tree来授权,网上开源的插件很多,如treejs.easyui 等等,只是这里授权稍 ...

  9. JavaScript面向对象轻松入门之封装(demo by ES5、ES6、TypeScript)

    本章默认大家已经看过作者的前一篇文章 <JavaScript面向对象轻松入门之抽象> 为什么要封装? 封装(Encapsulation)就是把对象的内部属性和方法隐藏起来,外部代码访问该对 ...

  10. .NET 开发环境搭建

    概述 在接下来的时间里,将会入手ASP.NET MVC这一专题,尽量用最快的时间,最有效的方法,分别从深度和广度上剖析这一专题,力求讲明白.讲透.以此来与大家分享,力求达到共同学习,共同交流,共同进步 ...