git 开发使用总结

git 查看某个分支下的所有文件

  git ls-tree -r master

git 撤销更改的文件

在没有git add之前:

1.撤销所有更改:git checkout .

2.撤销指定文件的更改:git checkout -- file.txt

git add之后:

git reset HEAD file.txt

git push 之后:

git reset --hard  comittHash // git log --online可以查看hashid 返回到某个节点,不保留修改

git reset --soft  comittHash // git log --online可以查看hashid 返回到某个节点,保留修改

 

git reflog 查看全部提交的记录,回滚来,还可以回滚去,反复回滚,无所谓

git 合并到dev

先切换到本地dev

在dev  执行pull操作

选中要合并的分支,找到merge into current, 点击merge

再push

git reset --hard xxx、git reset --soft 及git revert的区别

git reset --hard xxxx

彻底回退版本,连本地文件都会被回退到上个版本的内容

git reset --sort xxxx

只回退commit,如果你想再次提交直接git commit即可

 

Revert 撤销一个提交的同时也会重新创建一个提交。这是一个安全的方法,因为它不会重写提交历史。比如,下面的命令会找出倒数第二个提交,然后创建一个新的提交来撤销这些更改,然后把这个提交加入项目中。
相比git reset,它不会改变现在的提交历史。因此,git revert可以用在公共分支上,git reset应该用在私有分支上

你也可以把git revert当作撤销已经提交的更改,而git reset HEAD用来撤销没有提交的更改。

 

git删除编辑的内容(未commit的内容)

git status  (查看编辑到文件)

git checkout 文件名  //将当前文件编辑到内容清空

git在dev上改了代码,没有commit,怎么将修改的代码切到另一个分支上

1、在dev上git stash

2、切换到另一个分支  git stash apply

git在dev上改了代码,并且已经push到了远程,怎么将代码切换到另一个分支上

1、 在dev分支上 git reset --soft HEAD^

2、在dev分支上 git stash

3、切换到要切换到分支上, git stash apply

4、之后就是commit  pull  push 三个步骤

工作中用到的工具总结

alpha系统 目前主要是用于查看任务列表

jenkins:目前主要是用于dev发版的

swagger:查看后端提供的接口

tapd:  主要是缺陷跟踪管理

zeplin:查看设计师提供的设计稿

Vue拖拽组件

https://www.npmjs.com/package/vue-slicksort?activeTab=readme

从master拉取一个新分支,并且push到远程的方法

1,从已有的分支创建新的分支(如从master分支),创建一个dev分支

git checkout -b dev

2,创建完可以查看一下,分支已经切换到dev

1
2
3
4

git branch
 
  * dev
  master

3,提交该分支到远程仓库

git push origin dev

4,测试从远程获取dev

git pull origin dev

或者:

如果用命令行,运行 git fetch,可以将远程分支信息获取到本地,再运行 git checkout -b local-branchname origin/remote_branchname  就可以将远程分支映射到本地命名为local-branchname  的一分支

5,我觉得现在重要的就是设置git push,pull默认的提交获取分支,这样就很方便的使用git push 提交信息或git pull获取信息

git branch --set-upstream-to=origin/dev

取消对master的跟踪

git branch --unset-upstream master


6,现在随便修改一下工程文件的内容,然后git commit ,git push,之后就可以直接提交到远程的dev分支中,而不会是master

Git如何stash部分文件

首先解释下git stash的作用,git stash是将本地没有commit的部份全部存储起来,这样方便你进行pull之类的操作,具体可以参考Git 工具 - 储藏与清理.

但是如果直接git stash的话,会将当前所有文件都存储起来,而我只想存储两个配置文件,其他的全部一起commit,这应该怎么办呢?这里需要用到一个git stash -p的命令;它是一个交互式命令,我们可以一个文件一个文件的遍历,决定每个文件的操作方式.

root /u/c/s/cbs (master)# git stash -p
diff --git a/cmd/scripts/cbs.sh b/cmd/scripts/cbs.sh
old mode 100644
new mode 100755
Stash mode change [y,n,q,a,d,/,?]? 

这里的[y,n,q,a,d,/,?]分别代表的含义如下:

   y - stage this hunk
   n - do not stage this hunk
   q - quit; do not stage this hunk nor any of the remaining ones
   a - stage this hunk and all later hunks in the file
   d - do not stage this hunk nor any of the later hunks in the file
   g - select a hunk to go to
   / - search for a hunk matching the given regex
   j - leave this hunk undecided, see next undecided hunk
   J - leave this hunk undecided, see next hunk
   k - leave this hunk undecided, see previous undecided hunk
   K - leave this hunk undecided, see previous hunk
   s - split the current hunk into smaller hunks
   e - manually edit the current hunk
   ? - print help

所以,遇到我们需要stash的文件,我们就y,不需要stash需要commit的文件,我们就n,如果接下来没有需要stash的文件,则直接q退出就行.

将文件保存好后,我们就可以commit和push剩下的代码了.

git commit -m ""
git push origin master

然后我们将stash的文件恢复到本地,所有的操作就完成了.

git stash pop

 

git将多个提交记录合并成一个提交记录

git merge -- squash

git  squash 的用法

-- 将多个commit 记录合并成一个,可用于

  1. 本地提交测试后合并至远程分支,只留下一个commit 记录
  2. develop分支merge至主线分支时,只有一个 commit 记录,代码整洁

-- 将develop分支代码合并至 master分支,只保留一个commit记录

1、 切换至 master分支
2、 git merge origin/develop --squash
3、 git commit -m "问题修改--测试ok"

 

git 修改远程仓库地址: 

git remote set-url origin http://192.168.100.235:9797/john/git_test.git

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值