git使用命令

Moon_Yue825

git使用命令

1.基本使用

  • git init 仓库初始化

  • git add <file> 添加文件到仓库

  • git add . 将所有修改过的文件

  • git add -u 将所有修改或已删除的tracked文件添加到暂存区

  • git add -A 将所有文件的修改和删除文件添加的暂存区

  • git rm <file> 从版本库中删除文件

  • git rm <file> --cached 从版本库中删除,但不删除本地文件

  • git checkout -- <file> 取消工作区文件的修改

  • git checkout -- . 取消所有工作区文件的修改

命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

  • git reset HEAD <file> 从暂存区恢复到工作文件

  • git reset 从暂存区恢复所有文件到工作区

  • git reset HEAD^ 工作区不改变,但是暂存区会回退到上一次提交之前,引用也会回退一次。

  • git reset --hard HEAD^ 彻底撤销最近的提交。引用回退到前一次,而且工作区和暂存区都会回退到上一次提交的状态。自上一次以来的提交全部丢失。

  • git reset (--hard) commit_id 回退到某个版本,--hard参数表示是否保留工作区的修改

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

  • git commit -m "what are you doing?" 文件提交

  • git log --pretty=oneline --graph 显示提交日志

--pretty=oneline 日志一行简要显示
--graph 图形化显示日志

  • git reflog 查看命令日志,可以用来确定要回到未来哪个版本

2.分支操作

  • git branch

  • git checkout -b <name>

  • git checkout <name>

  • git merge <name>

  • git merge --no-ff -m "instructions" <name> 合并分支到当前

--no-ff 保留分支信息

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

  • git branch -D <name> 强制删除分支

3.远程仓库操作

  • git remote add origin git@github.com:luna825/learngit.git 关联一个远程库

  • git push -u origin master 第一次

  • git clone https://github.com/luna825/lunablog.git 克隆一个远程仓库

  • git remote -v 显示远程仓库

-v会显示需要读写远程仓库使用的 Git 保存的简写与其对应的 URL

  • git fetch origin 获取远程仓库中有,但你没有的信息

  • git push origin master 推送到远程仓库

  • git remote show origin 查看远程仓库

  • git pull 会从最初克隆的服务器上抓取数据并自动尝试合并到当前所在的分支。

  • git remote rename pb paul 修改远程仓库的名字

  • git remote rm paul 删除远程仓库

4.远程分支

  • git push origin serverfix 推送分支

这里有些工作被简化了。 Git 自动将 serverfix 分支名字展开为 refs/heads/serverfix:refs/heads/serverfix,那意味着,“推送本地的 serverfix 分支来更新远程仓库上的 serverfix 分支。
你也可以运行 git push origin serverfix:serverfix,它会做同样的事 - 相当于它说,“推送本地的 serverfix 分支,将其作为远程仓库的 serverfix 分支” 可以通过这种格式来推送本地分支到一个命名不相同的远程分支。 如果并不想让远程仓库上的分支叫做 serverfix,可以运行 git push origin serverfix:awesomebranch 来将本地的 serverfix 分支推送到远程仓库上的 awesomebranch 分支。

  • git merge origin/serverfix 远程分支合并到当前分支.最好使用本命令来合并分支,因为git pull会合并所有跟踪的分支

  • git checkout -b serverfix origin/serverfix 新建本地分支并将远程分支clone下来(建立了track)

git checkout --track origin/serverfix简写

  • git branch -u origin/serverfix设置已有的本地分支跟踪一个刚刚拉取下来的远程分支

  • git branch -vv 这会将所有的本地分支列出来并且包含更多的信息,如每一个分支正在跟踪哪个远程分支与本地分支是否是领先、落后或是都有

阅读 2.3k

luna-blog
is_studing = ['python','flask','linux'] will_study=['javascript','mysql'] 坚持!!!

不断的学习才不会淘汰

105 声望
0 粉丝
0 条评论
推荐阅读
nginx+uwsgi+flask的简单部署
nginx+uwsgi+flask的简单部署 nginx的安装配置 uwsgi的安装配置 nginx的安装配置 安装前提:在安装nginx前,需要确保系统安装了gcc,gcc++,open-devel和zlib-devel。软件。安装必须软件: {代码...} 安装:下载ngin...

Moon_Yue8252阅读 3.1k

Git 分支管理策略汇总
我大概说了一些规则,但仔细想来,好像也并没有形成一个清晰规范的流程。所以查了一些资料,总结出下面这篇文章,一共包含四种常见的分支管理策略,分享给大家。

alwaysbeta3阅读 566

封面图
在实际工作开发中非常实用的几个 git 命令
前言:git 在实际开发过程中的重要性对在座的各位来说想必不用我过多赘述,但是对于 git 中千千万万复杂的命令来讲,在实际开发过程中只有小部分是最经常使用的,今天国庆节第一天,由于疫情原因没回家。闲着没事...

FFF方1阅读 1.8k

封面图
Git命令的使用
git add 命令将该文件添加到暂存区1、有新创建文件: {代码...} 2、无新创建文件: {代码...} 注:无新文件的时候以上两者都可以使用,有新文件时需要add一下

肥肥1阅读 758

JVS低代码权限管控方式
低代码的权限管控,与传统开发的程序的权限管控差异不同之处在哪里的,现在我们来具体介绍下。先讲解下JVS的实现的原理,我们在数据库之上做了一个数据模型层,他主要完成动态配置列表页与表单的字段,在物理的数...

软件部长1阅读 355

不断的学习才不会淘汰

105 声望
0 粉丝
宣传栏