Git常用命令总结

栏目: 编程工具 · 发布时间: 6年前

内容简介:Git是一个先进的分布式版本控制系统,用来追踪计算机文件的变化的工具,也是一个供多人使用的协同工具。它是一个分布式的版本控制系统。简单来说,就是你要和你的伙伴一起完成一项任务,但是你们要互相交换修改,查看自己的历史版本等。版本控制系统就是帮助我们做这个的。

Git简介

Git是一个先进的分布式版本控制系统,用来追踪计算机文件的变化的工具,也是一个供多人使用的协同工具。它是一个分布式的版本控制系统。简单来说,就是你要和你的伙伴一起完成一项任务,但是你们要互相交换修改,查看自己的历史版本等。版本控制系统就是帮助我们做这个的。

初始化

git init (初始化git通过 git init 命令把这个目录变成Git可以管理的仓库)

创建sshKey

ssh-keygen -t rsa -C "546558392@qq.com" (创建本机的sshKey)

下载

git clone https://github.com/userzf/TODO.git (后面复制一下你的下载地址)

上传

上传文件分几步

1 git add . (上传当前目录下所有更改过的文件) --首先把更改过得文件添加到缓存区

2 git status (查看缓存区文件) --可省略

3 git commit -m'描述提交信息' (准备提交)-- 填写提交信息

4 git push (上传文件) --提交,到这一步就可以成功上传文件了

更新

git pull (当线上仓库比你的版本高的时候更新自己电脑里的仓库)

创建切换分支

git checkout -b dev (创建 dev 分支并切换到 dev 分支)

上面 这条命令相当于两条命令:

git branch dev (创建分支 dev )

git checkout dev (切换到分支 dev )

查看当前仓库的所有分支

git branch

显示如下,已经成功切换到了branch分支

`git branch`
* dev
  master

提交时可以指定分支

git push origin dev (提交到分支 dev )

删除分支

git beanck -d dev (删除分支 dev

git beanck -D dev (强行删除分支 dev )

合并分支

一般在公司多人开发时,把主分支 master 合并到自己的分支 dev (这里用 dev 分组代替自己创建的分支),在分支 dev 上进行合并,【合并时处理分支与主分支冲突】,然后再切换到 主分支 master 合并自己的分支 dev
(自己的项目才这么干,公司多人协作一般都会请求合并到主分支,由相关负责人去合并你的认知)

首先使用:point_down:这条命令 切换到自己的分支(如果你在自己的分支可看下一条)

git checkout dev (切换到分支 dev

然后使用:point_down:这条命令,将主分支合并到自己的分支

git merge master (将 master 这条分支合并到自己的分支 dev )

合并处理问题后

切换到主分支 master 然后进行合并分支 dev (多人协作时这个任务不用你做!你只需申请提交)

查看命令历史提交历史

{查看提交历史,以便确定要回退到哪个版本。}

查看提交历史

git log

查看命令历史(你使用过哪些git命令)

git reflog

撤回

如果你现在很急想要撤回,希望你看过:point_right: 查看命令历史|提交历史 这个!

工作时 难免会出现错误的提交或操作,出了问题不要慌,要冷静!!!(表面冷静,实则慌的一批!):disappointed_relieved::disappointed_relieved::disappointed_relieved::sob:

git 撤回操作,撤回后两种形式

1 git reset --hard commit_id

(PS:commit_id:需要返回的版本号,这种方式是去用 git reflog 命令先查看一下提交的编号,然后返回到输入的这个 commit_id 操作前的样子)

2 git reset --hard HEAD^

( HEAD :表示当前版本,后面的 ^ 表示上一个 add *** 代码的时候,可以有多个 ^ ,当然往上100个

版本写100个^比较容易数不过来,所以写成HEAD~100。但是自我感觉第一种方式要放心好用一点! )

设置用户名和密码

git config --global user.name [username]
git config --global user.email [email]

查看配置信息

git config --list

强制pull

:point_down:这段代码强制把云端仓库下载下来,有需要的时候你可能会用到!

git fetch --all
git reset --hard origin/master

git pull

强制push

现将远程主分支拉下来,在强制推上去

git pull origin master
git push -u origin master

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2018-10/154705.htm


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java解惑

Java解惑

(美)布洛克·加夫特 / 陈昊鹏 / 人民邮电出版社 / 2010-11-22 / 49.00元

你认为自己了解Java多少?你是个爱琢磨的代码侦探吗?你是否曾经花费数天时间去追踪一个由Java或其类库的陷阱和缺陷而导致的bug?你喜欢智力测验吗?本书正好适合你! Bloch和Gafter继承了Effective Java一书的传统,深入研究了Java编程语言及其核心类库的细微之处。本书特写了95个噩梦般的谜题,中间穿插着许多有趣的视觉幻象,寓教于乐。任何具备Java知识的人都可以理解这......一起来看看 《Java解惑》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具