Git高级教程,常见工程问题笔记

1、一个分支的内容完全替换成另一个分支的内容

一般来说,我们会在develop开发,master保留干净的发布版本。但是有的时候需要重构代码,老的代码(masger)还在使用,这个时候需要整体上新的重构代码。

git checkout master

git reset --hard develop  //先将本地的master分支重置成develop
git push origin master --force //再推送到远程仓库

2、通过Tag标签回退版本修复bug

 中括号里是版本号或者名称,需要自己修改

1.查看标签的版本,即版本回退

git tag 

git show [tag_name]

git reset --hard [commend id]

2.拉取当前分支

git checkout -b [branch_name]

3.主干回复到最新位置

git checkout master

git reflog

git reset --hard [commend id]

4.切换到分支,修改bug,然后再合并到主干,重新打标签

3、git一次性添加所有已经修改的文件

git add -u

-u --update 更新跟踪的文件

4.忽略文件.gitignore

文件 .gitignore 的格式规范如下:
• 所有空行或者以 # 开头的行都会被 Git 忽略。
• 可以使用标准的 glob 模式匹配。
• 匹配模式可以以(/)开头防止递归。
• 匹配模式可以以(/)结尾指定目录。

• 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。

所谓的 glob 模式是指 shell 所使用的简化了的正则表达式。 星号(*)匹配零个或多个任意字符;[abc] 匹配
25任何一个列在方括号中的字符(这个例子要么匹配一个 a,要么匹配一个 b,要么匹配一个 c);问号(?
)只匹配一个任意字符;如果在方括号中使用短划线分隔两个字符,表示所有在这两个字符范围内的都可以匹配
(比如 [0-9] 表示匹配所有 0 到 9 的数字)。 使用两个星号(*) 表示匹配任意中间目录,比如`a/**/z` 可以匹

配 a/z, a/b/z 或 `a/b/c/z`等。

5.跳过使用暂存区域 

尽管使用暂存区域的方式可以精心准备要提交的细节,但有时候这么做略显繁琐。 Git 提供了一个跳过使用暂
存区域的方式, 只要在提交的时候,给 git commit 加上 -a 选项,Git 就会自动把所有已经跟踪过的文件暂存

起来一并提交,从而跳过 git add 步骤

有时候这个命令很方便,省略了git add 

6.撤消操作

在任何一个阶段,你都有可能想要撤消某些操作。
有时候我们提交完了才发现漏掉了几个文件没有添加,或者提交信息写错了。 此时,可以运行带有 --amend 选
项的提交命令尝试重新提交:
$ git commit --amend
这个命令会将暂存区中的文件提交。
文本编辑器启动后,可以看到之前的提交信息。 编辑后保存会覆盖原来的提交信息。
例如,你提交后发现忘记了暂存某些需要的修改,可以像下面这样操作:
$ git commit -m 'initial commit'
$ git add forgotten_file
$ git commit --amend
最终你只会有一个提交 - 第二次提交将代替第一次提交的结果。

7.远端分支重命名

一、远端分支对应的本地分支名称修改

$ git branch -m 本地分支名称 新的本地分支名称

上面这个指令可以直接修改本地分支名称

二、删除远端分支

$ git push origin :本地分支名称

三、重新推送新的分支名

$ git push origin 新的本地分支名称

还以以使用下面的方法:

$ git remote rename <old_name> <new_name>

8.删除远端分支

$ git branch -r -d origin/分支名称

$ git push origin : 分支名称

还可以使用

$ git push -d origin 分支名称

git push [远程名] :[分支名]

9.还原某一文件

$ git checkout <hash> <filename>

$  git commit -m ""

10、创建空白分支并推送服务器

$ git checkout --orphan gh-pages
# 创建一个orphan的分支,这个分支是独立的

git rm -rf .
# 删除原来代码树下的所有文件
rm '.gitignore'

11、从命令行创建一个新的仓库

git init 

git add .

git commit -m ""

git remote add origin http://192.168.5.5:30000/name/*.git

git push -u origin master

如果在界面创建的可用命令行直接推送到已经创建的仓库

git remote add origin http://192.168.5.5:30000/name/*.git

git push -u origin master

12、 Git命令行添加整个文件夹及目录 

Git查看帮助的三种手段

$ git help <verb>
$ git <verb> --help
$ man git-<verb>

获取手册的命令

$ git help config
 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

道格拉斯范朋克

播种花生牛奶自留田

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值