Git基本使用及工具
好久没用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基本使用及工具的更多相关文章
- [转]Git调用第三方对比工具beyondCompare
点击阅读原文 对于我这种 git 命令行小白来说, git 自带的对比工具各种水土不服,想念以前的 svn 小乌龟 + beyondCompare 的日子...纠结完 gitHub client 未果 ...
- 配置Meld为git的默认比较工具
1. 安装 meld sudo apt-get install meld 2. 创建 git_meld.sh 脚本 cd /bin vim git-meld.sh #!/bin/sh meld $2 ...
- Git - 可视化冲突解决工具P4Merge
P4Merge P4Merge是Git的一个第三发Diff和Merge工具(可视化冲突解决工具). 下载地址: https://www.perforce.com/downloads/visual-me ...
- [转]VS2015 Git 源码管理工具简单入门
VS2015 Git 源码管理工具简单入门 1.VS Git插件 1.1 环境 VS2015+GitLab 1.2 Git操作过程图解 1.3 常见名词解释 拉取(Pull):将远程版本库合并到本 ...
- git与代码托管工具
1.git初识 git是一个版本管理工具,用来管理项目的不同的版本,记录下不同的提交记录,git还可以构建不同的分支,用来给不同的人来推送使用. 推荐的git教程:https://www.cnblog ...
- VS2015 Git 源码管理工具简单入门
1.VS Git插件 1.1 环境 VS2015+GitLab 1.2 Git操作过程图解 1.3 常见名词解释 拉取(Pull):将远程版本库合并到本地版本库,相当于(Fetch+Meger) 获取 ...
- Git是个好工具
Git是分布式版本控制系统,我们常用的版本控制工具还有SVN.这里就得区分下什么是分布式版本控制系统,什么是集中化的版本控制系统. 集中化的版本控制系统 集中化的版本控制系统( Centralized ...
- Git快速上手 : Tortoise工具使用
利用工具快速上手Git 别跟我说什么用命令操作Git,多高大上呀,请不要在这里跟我装逼,就如同,有个小妞在床上眉眼诱惑地,你却TM还要先看个片儿来热热身.... TortoiseGit 名字看着眼熟 ...
- SourceTree - 好用的 Git / Mercurial GUI 管理工具 for Mac OS X
Git 是免費.開放源碼的分散式版本控制系統,從小專案到非常大的專案,都可以很快速.有效地管理. 對程式設計師來說,一定要熟記 git 指令的用法,在終端機下操作 git 是必備的基本技能.(其他的 ...
- Git是个好工具(转)
Git是分布式版本控制系统,我们常用的版本控制工具还有SVN.这里就得区分下什么是分布式版本控制系统,什么是集中化的版本控制系统. 集中化的版本控制系统 集中化的版本控制系统( Centralized ...
随机推荐
- PAT 1040 Longest Symmetric String
#include <cstdio> #include <cstdlib> using namespace std; ]; ]; int syslen(char str[], i ...
- Maven学习篇一:eclipse构建运行maven web项目
1.new->other->maven project->next 2.选择创建简单项目(或者直接去掉勾,在后面选择maven-archetype-webapp) 3.设置坐标,名称 ...
- r.js压缩打包
AMD模块化开发中的代码压缩打包工具——r.js 环境搭建基于nodejs:用于AMD模块化开发中的项目文件压缩打包,不是AMD模式也是可以的 javascript部分 压缩javascript项目开 ...
- jQuery小测验
1.在div元素中,包含了一个<span>元素,通过has选择器获取<div>元素中的<span>元素的语法是? 提示使用has() $(div:has(span) ...
- 从软件工程师的角度看MacBook Air的几个设计亮点
我多年从事软件开发和运营工作,从未跟“设计”间断过.现在在设计一个全新saas产品:超级表格(www.domypp.com).最近买了台苹果最新款的笔记本电脑MacBook Air,从该产品功能设计和 ...
- 仿照jQuery写一个关于选择器的框架(带了注释,请多多指教~)
var select = (function () { //这是一个异常与捕获的代码,它表示的意思是:如果push方法出现了错误那么就需要重写push方法 try { //这边是自己模拟一个场景,来使 ...
- Ajax 重构的步骤
Ajax重构大致可以分为以下3三个步骤. 一 创建一个单独的JS文件,名称为AjaxRequest.js,并且在该文件中编写重构Ajax 所需的代码具体代码如下:var net = new Objec ...
- kahadb设计
Kahadb设计思想 简介 hakadb是activemq的持久化数据库,作为消息队列的存储,每个消息有一个消息ID,提供了对消息的快速的查找,更新,以及消息的事物支持,以及意外磬机之后的恢复.丰 ...
- Codeforces Round #333 (Div. 1)
A. The Two Routes In Absurdistan, there are n towns (numbered 1 through n) and m bidirectional railw ...
- 课堂笔记--------JavaScript 的DOM操作
1.DOM的基本概念 DOM是文档对象模型,这种模型为树模型:文档是指标签文档:对象是指文档中每个元素:模型是指抽象化的东西. 2.Window对象操作 一.属性和方法: 属性(值或者子对象): op ...