文档章节

git常规命令

 走起来
发布于 2017/04/07 11:09
字数 955
阅读 11
收藏 0
点赞 0
评论 0

refer: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

版本回退 git reset --hard 3628164 git reset --hard HEAD^ git reset --hard HEAD^^ git reset --hard HEAD~100 //倒数100个版本

查看提交日志: git log git log --graph --pretty=oneline --abbrev-commit

查看命令历史: git reflog

查看当前状态: git status

添加和提交 git add readme.txt git commit -m 'readme file add first' readme.txt

比较工作区和暂存区不同: git diff readme.txt git diff HEAD -- readme.txt

比较暂存区和本地版本库不同: git diff --cached HEAD readme.txt

工作区撤销修改: git checkout -- readme.txt

暂存区撤销修改: git reset HEAD readme.txt

远程仓库关联 git remote add origin git@server-name:path/repo-name.git

第一次推送master分支的所有内容 git push -u origin master

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支: git merge dev //Fast forward模式合并 git merge --no-ff -m "merge with no-ff" dev //非Fast forward模式,分支保留成一个旧的版本,合并后的历史有分支,能看出来曾经做过合并

删除分支:git branch -d <name>

当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场 你可以多次stash,恢复的时候,先用git stash list查看,然后恢复指定的stash,用命令: git stash apply stash@{0}

因此,多人协作的工作模式通常是这样:

首先,可以试图用git push origin branch-name推送自己的修改;

如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;

如果合并有冲突,则解决冲突,并在本地提交;

没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name。

这就是多人协作的工作模式,一旦熟悉了,就非常简单

查看远程库信息,使用git remote -v;

本地新建的分支如果不推送到远程,对其他人就是不可见的;

从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;

在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;

建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;

从远程抓取分支,使用git pull,如果有冲突,要先处理冲突

命令git tag <name>用于新建一个标签,默认为HEAD,也可以指定一个commit id;

git tag -a <tagname> -m "blablabla..."可以指定标签信息;

git tag -s <tagname> -m "blablabla..."可以用PGP签名标签;

命令git tag可以查看所有标签。

命令git push origin <tagname>可以推送一个本地标签;

命令git push origin --tags可以推送全部未推送过的本地标签;

命令git tag -d <tagname>可以删除一个本地标签;

命令git push origin :refs/tags/<tagname>可以删除一个远程标签

忽略提交的文件信息文件 git check-ignore -v App.class //查看是否忽略提交

问题: git push -u origin master Warning: Permanently added the RSA host key for IP address '192.30.255.113' to the list of known hosts. Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. answer: 第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下>一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key: $ ssh-keygen -t rsa -C "youremail@example.com" 第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:

本文转载自:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

共有 人打赏支持
粉丝 1
博文 25
码字总数 2727
作品 0
闵行
开源 Git 插件--Git Town

Git Town 是开源的 Git 插件,可以添加 Git 命令,使得软件协作开发更高效更安全。Git Town 支持常规和高级别的 Git 工作流。 Git Town 提供以下这些额外的 Git 命令: 开发工作流 git hack...

叶秀兰
2015/11/02
2.9K
0
Git Town —— 支持高级别工作流开源 Git 插件

Git Town 是开源的 Git 插件,可以添加 Git 命令,使得软件协作开发更高效更安全。Git Town 支持常规和高级别的 Git 工作流。

oschina
2015/11/03
17
0
Git 安全工具--Git-secure

Git 存储库加密工具 git-secure 主要的功能时在用户提交时将用户的代码或者文件使用 AES 加密,然后发布到代码托管平台,同时也支持用户从远程服务器上 clone 已被加密的存储库并从中恢复源码...

Force武装卫队
2017/08/03
429
1
Git reset/revert的应用

课下来自己动手试试git的命令 主要尝试及记录 以上3个命令的具体作用及区别,这些命令主要用于撤销修改,但又各有些小区别 尝试准备 首先,为了制造合适的测试环境,我选择重新初始化一个本地...

秦亦辰
2017/08/15
0
0
GitLab 不受 Git 安全漏洞影响 CVE-2014-9390

昨天 Git 爆出一个严重的安全漏洞。该漏洞影响所有官方的 Git 客户端版本,由于是一个客户端的漏洞,因此包括 git.oschina.net、GitLab.com, GitLab 社区版和企业版 都不会直接受影响。 该漏...

红薯
2014/12/20
1K
7
技术随笔八——仰望夜空 仰望Git

所有友好的伙伴们: 大家好! 心灵的生活就像流水,有的时候湍急,有的时候平缓。无论湍急还是平缓,我们都是快乐地奔向远方。 我先要赞美vmware虚拟化技术,他给我们的生活增添了几分迷离、...

铁甲单骑
2015/07/17
0
2
git基础

知识点、git工作区(Working Directory)、版本库(Repository) 工作区:本地文件目录版本库:本地文件目录中的.git目录(为隐藏目录) 版本库里有暂存区(stage或者叫index),第一个分支(...

2char
01/05
0
0
Gitlab的部署、应用以及502报错解决-centos

       Gitlab的部署以及应用 GitLab简介 GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,它也是一个自托管的Git项目仓库,是集代码托管,测试,部署于一体的开源...

技术小疯子
05/30
0
0
Git@OSC 新增分支保护功能 : 常规、保护、只读

Git@OSC 新增分支保护功能! 分支保护功能是为了防止相关成员 Push 代码到重要的分支(例如 master 分支),便于项目的分支管理。 Git@OSC 的分支除了之前的常规分支外,新增两种不同的权限:...

oschina
2015/01/30
6.7K
30
git commit以后还没有push ,此时想放弃修改如何操作?

用控制台进到本地版本目录下,使用如下命令,重置修改。 git reset —hard 提交Id 总结下 git 的常规使用: 一般我们使用 git 来维护项目代码。 前提背景: 远程服务器上代码库,包含分支: 1...

SunGiantor
2015/09/08
135
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

idea tomcat 远程调试

tomcat 配置 编辑文件${tomcat_home}/bin/catalina.sh,在文件开头添加如下代码。    CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7829" Idea端配......

qwfys
今天
1
0
遍历目录下的文件每250M打包一个文件

#!/usr/bin/env python # -*- utf-8 -*- # @Time : 2018/7/20 0020 下午 10:16 # @Author : 陈元 # @Email : abcmeabc@163.com # @file : tarFile.py import os import tarfile import thr......

寻爱的小草
今天
1
0
expect同步文件&expect指定host和要同步的文件&构建文件分发系统&批量远程执行命令

20.31 expect脚本同步文件 expect通过与rsync结合,可以在一台机器上把文件自动同步到多台机器上 编写脚本 [root@linux-5 ~]# cd /usr/local/sbin[root@linux-5 sbin]# vim 4.expect#!/...

影夜Linux
今天
1
0
SpringBoot | 第九章:Mybatis-plus的集成和使用

前言 本章节开始介绍数据访问方面的相关知识点。对于后端开发者而言,和数据库打交道是每天都在进行的,所以一个好用的ORM框架是很有必要的。目前,绝大部分公司都选择MyBatis框架作为底层数...

oKong
今天
13
0
win10 上安装解压版mysql

1.效果 2. 下载MySQL 压缩版 下载地址: https://downloads.mysql.com/archives/community/ 3. 配置 3.1 将下载的文件解压到合适的位置 我最终将myql文件 放在:D:\develop\mysql 最终放的位...

Lucky_Me
今天
2
0
linux服务器修改mtu值优化cpu

一、jumbo frames 相关 1、什么是jumbo frames Jumbo frames 是指比标准Ethernet Frames长的frame,即比1518/1522 bit大的frames,Jumbo frame的大小是每个设备厂商规定的,不属于IEEE标准;...

问题终结者
今天
2
0
expect脚本同步文件expect脚本指定host和要同步的文件 构建文件分发系统批量远程执行命令

expect脚本同步文件 在一台机器上把文件同步到多台机器上 自动同步文件 vim 4.expect [root@yong-01 sbin]# vim 4.expect#!/usr/bin/expectset passwd "20655739"spawn rsync -av ro...

lyy549745
今天
1
0
36.rsync下 日志 screen

10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 screen工具 10.32/10.33 rsync通过服务同步: rsync还可以通过服务的方式同步。那需要开启一个服务,他的架构是cs架构,客户端服务...

王鑫linux
今天
1
0
matplotlib 保存图片时的参数

简单绘图 import matplotlib.pyplot as pltplt.plot(range(10)) 保存为csv格式,放大后依然很清晰 plt.savefig('t1.svg') 普通保存放大后会有点模糊文件大小20多k plt.savefig('t5.p...

阿豪boy
今天
3
0
java 8 复合Lambda 表达式

comparator 比较器复合 //排序Comparator.comparing(Apple::getWeight);List<Apple> list = Stream.of(new Apple(1, "a"), new Apple(2, "b"), new Apple(3, "c")) .collect(......

Canaan_
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部