好久没用git管理代码了,最近忙着要实习,一直在看面试题,后天入职了,就提前再复习一下git吧。

git比较方便的两个网站,如果你想逼格高就用GitHub(https://github.com/),如果你想方便就用码云(开源中国)(https://gitee.com/

其实如果你是python玩家,IDE选用pycharm,自带git上传下拉功能。还有软件source tree进行代码管理也不错(不过要谷歌账号注册,所以需要科学上网)

这里主要说linux命令行进行git管理

1.安装

sudo apt-get install git

2.安装成功后,运行如下命令

git

好了,本贴完结

才怪。。。

3.配置

vi .gitconfig

这里修改为你的邮箱和用户名就行了

修改为注册git时的邮箱,填写用户名,要求组员的用户名不能重复

注册git项目就不在这里写了,有兴趣可能会开一份新博

4.创建ssh密匙

ssh-keygen -t rsa -C "Github账号,可以是用户名,也可以是邮箱地址"

这里一路回车就行了

cd .ssh
cat id_rsa.pub

然后把密匙放在git的ssh里就行了

5.克隆

在网站上下载需要用的项目就行了

git clone git地址

6.分支

分支相当于上线版本,测试版本还有本地版本,是一个很重要的东西

  • 创建分支
  • git branch 分支名称
    例:
    git branch dev
  • 切换分支
  • git checkout 分支名称
    例:
    git checkout dev
  • 将分支推送到服务器
  • git push origin 分支名称
    例:
    git push origin dev
  • 将本地分支跟踪服务器分支
  • git branch --set-upstream-to=origin/分支名称 分支名称
    例:
    git branch --set-upstream-to=origin/dev dev
  • 创建并切换分支
  • git checkout -b 分支名称
    例:
    git checkout -b itcast
  • 查看所有分支,当前分支前标记为星*
  • git branch
  • 删除分支
  • git branch -d 分支名称

7.代码暂存,提交,上传

git add 代码文件夹/
git commit -m '代码说明'

推送分支

git push origin 分支名称
例:
git push origin dev

合并分支

git checkout dev
git merge 代码xxx

8.获取网上代码

  • 1.切换到dev分支
  • git checkout dev
  • 2.获取代码,如果dev分支上有更新的记录则会同步到本地
  • git pull
  • 3.切换回自己的分支继续开发
  • git checkout 自己分支

9.历史和状态

查看历史版本

git reflog

查看状态

git status

回滚

git reset HEAD^或版本号
例:
git reset HEAD^

10.总结

  • git clone git地址
  • git add 文件或目录
  • git rm 文件或目录
  • git checkout -- 文件
  • git commit -m '备注说明'
  • git reset HEAD或版本号
  • git reflog
  • git log
  • git status
  • git branch 分支名称
  • git branch --set-upstream-to=origin/分支名称 分支名称
  • git checkout 分支名称
  • git checkout -b 分支名称 origin/分支名称
  • git diff 版本1 版本2
  • git merge 分支名称
  • git pull
  • git push origin 分支名称
  • git tag 标签名称
  • git stash

OK,万事大吉,建议自己多尝试很简单。

Git基本使用及工具的更多相关文章

  1. [转]Git调用第三方对比工具beyondCompare

    点击阅读原文 对于我这种 git 命令行小白来说, git 自带的对比工具各种水土不服,想念以前的 svn 小乌龟 + beyondCompare 的日子...纠结完 gitHub client 未果 ...

  2. 配置Meld为git的默认比较工具

    1. 安装 meld sudo apt-get install meld 2. 创建 git_meld.sh 脚本 cd /bin vim git-meld.sh #!/bin/sh meld $2 ...

  3. Git - 可视化冲突解决工具P4Merge

    P4Merge P4Merge是Git的一个第三发Diff和Merge工具(可视化冲突解决工具). 下载地址: https://www.perforce.com/downloads/visual-me ...

  4. [转]VS2015 Git 源码管理工具简单入门

    VS2015 Git 源码管理工具简单入门   1.VS Git插件 1.1 环境 VS2015+GitLab 1.2 Git操作过程图解 1.3 常见名词解释 拉取(Pull):将远程版本库合并到本 ...

  5. git与代码托管工具

    1.git初识 git是一个版本管理工具,用来管理项目的不同的版本,记录下不同的提交记录,git还可以构建不同的分支,用来给不同的人来推送使用. 推荐的git教程:https://www.cnblog ...

  6. VS2015 Git 源码管理工具简单入门

    1.VS Git插件 1.1 环境 VS2015+GitLab 1.2 Git操作过程图解 1.3 常见名词解释 拉取(Pull):将远程版本库合并到本地版本库,相当于(Fetch+Meger) 获取 ...

  7. Git是个好工具

    Git是分布式版本控制系统,我们常用的版本控制工具还有SVN.这里就得区分下什么是分布式版本控制系统,什么是集中化的版本控制系统. 集中化的版本控制系统 集中化的版本控制系统( Centralized ...

  8. Git快速上手 : Tortoise工具使用

    利用工具快速上手Git 别跟我说什么用命令操作Git,多高大上呀,请不要在这里跟我装逼,就如同,有个小妞在床上眉眼诱惑地,你却TM还要先看个片儿来热热身.... TortoiseGit  名字看着眼熟 ...

  9. SourceTree - 好用的 Git / Mercurial GUI 管理工具 for Mac OS X

    Git 是免費.開放源碼的分散式版本控制系統,從小專案到非常大的專案,都可以很快速.有效地管理. 對程式設計師來說,一定要熟記 git 指令的用法,在終端機下操作 git 是必備的基本技能.(其他的 ...

  10. Git是个好工具(转)

    Git是分布式版本控制系统,我们常用的版本控制工具还有SVN.这里就得区分下什么是分布式版本控制系统,什么是集中化的版本控制系统. 集中化的版本控制系统 集中化的版本控制系统( Centralized ...

随机推荐

  1. web应用开发周期

    web应用开发周期 1. 前期准备 2. 编码 3. 上线 4. 数据分析 5. 持续交付 6. 遗留系统 7. 回顾与新架构 重构的一般性因素 1. 系统难以维护 2. 系统技术栈难以符合业务需求 ...

  2. Java集合篇三:Vector

    package com.test.collection; import java.util.Vector; public class MyVector { /** * @param args */ p ...

  3. Jms学习篇一:JMS介绍

    1.JMS介绍: JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API JMS是一种与厂商无关的 API,用来访问 ...

  4. 集合之Iterator迭代器

      Iterator迭代器概述: java中提供了很多个集合,它们在存储元素时,采用的存储方式不同.我们要取出这些集合中的元素,可通过一种通用的获取方式来完成. Collection集合元素的通用获取 ...

  5. 使用cookie实现只出现一次的广告代码效果

    我们上网经常会遇到第一次需要登录而之后不用再登录的网站的情况,其实是运用了Cookie 存储 web 页面的用户信息,Cookie 以名/值对形式存储,当浏览器从服务器上请求 web 页面时, 属于该 ...

  6. 详解Struts1.x的运行机制及命名规则

    Struts1.x 调用一个action的大致流程: 1)首先前端发送 *.do的一个action请求(通过点击表单提交按钮,js 事件等): 2)web.xml 文件通过 *.do 找到 Actio ...

  7. table是可语义化

    为了使我们的网站更好的被搜索引擎抓取收录,更自然的获得更高的流量,网站标签的语义化就显得尤为重要.所谓标签语义化,就是指标签的含义. 为了更好的理解标签的语义化,先看下面这个例子: <table ...

  8. 设计模式之简单工厂模式(Simple Factory)

    原文地址:http://www.cnblogs.com/BeyondAnyTime/archive/2012/07/06/2579100.html 今天呢,要学习的设计模式是“简单工厂模式”,这是一个 ...

  9. web开发路径问题解决

     使用监听器解决路径问题 监听器:

  10. Scrapy研究探索(三)——Scrapy核心架构与代码执行分析

    学习曲线总是这样,简单样例"浅尝".在从理论+实践慢慢攻破.理论永远是基础,切记"勿在浮沙筑高台". 一. 核心架构 关于核心架构.在官方文档中阐述的非常清晰, ...