文档章节

git常规命令

 走起来
发布于 2017/04/07 11:09
字数 955
阅读 11
收藏 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
GitLab 不受 Git 安全漏洞影响 CVE-2014-9390

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

红薯
2014/12/20
1K
7
Git reset/revert的应用

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

秦亦辰
2017/08/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring JdbcTemplate模板模式与回调结合分析

在看Spring的JdbcTemplate的时候,看到其将模板模式和回调模式结合使用的实现,可以精妙的解决很多的问题。详见Spring中涉及的设计模式总结中的关于模板模式和回调模式结合的具分析,本文利用...

宸明
43分钟前
1
0
docker update:更新一个或多个容器的配置

更新容器的配置 docker update:更新一个或多个容器的配置。 具体内容请访问:https://docs.docker.com/engine/reference/commandline/update/#options 语法:docker update [OPTIONS] CONTA...

lwenhao
今天
2
0
unload事件

unload事件不触发的原因分析 1.代码位置不对,应该优先加载,不能放到回调函数中 2.浏览器不支持 3.最可能的原因,unload事件中触发的函数是一个异步执行的函数,浏览器是不允许在窗口关闭之后在...

狮子狗
今天
1
0
DbForge Schema Compare for MySQL入门教程:如何连接到数据库

【dbForge Schema Compare for MySQL下载】 要创建连接: 1. 在“Connection” 工具栏上单击“New Connection”按钮 。 2. 在“Host” 框中输入主机名。 3. 在“Port” 框中输入端口信息。默...

Miss_Hello_World
今天
2
0
spring中事务的应用

spring中事务管理的两种方式 编程式事务使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,spring推荐使用TransactionTemplate。 声明式事务是建立...

狂奔的熊二
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部