首页 > 其他分享 >git

git

时间:2022-10-31 15:37:39浏览次数:82  
标签:HEAD git stash 修改 diff commit


git commit

git commit -s
提交的信息中带有signed-off-by:

git log

git log filename/dir
查看某个文件/目录的历史

git log –stat
显示当前commit在上一次commit基础上修改了哪些文件及行数等信息。

git log -p
显示当前commit在上一次commit基础上修改的文件的内容

git log –pretty=oneline
查看历史,并且每个历史只显示一行

git log –author=””
查看某个作者提交的历史


git show

git show commit_number
查看某次提交的修改,会以详细的信息显示提交的差异

git show commit_number –stat
查看某次提交的修改,显示改动的文件及基本的信息


git diff

git diff commitA commitB 显示commitA需要做哪些修改才能到commitB
git diff commitA HEAD filename 查看两次commit之间的某个文件的修改
git diff –stat commitA commitB 查看两次提交之间有哪些文件差异
git diff HEAD~ –stat 查看HEAD与前一次commit之间有哪些文件差异
git diff HEAD~ filename 查看HEAD与前一次commit之间filename文件的差异


git stash

git stash 放进暂存区
git stash list 列出暂存区的文件
git stash pop 取出最新的一笔,并从暂存区中移除
git stash apply 取出但不移除
git stash clear 清除暂存区


git clean

-f和-d选项分别删除untracked files和目录


git push

git push origin
origin是远程主机


git rebase修改历史commit信息

1\ 对于最后一次commit信息的修改很简单,git commit -amend进入编辑界面之后直接修改信息就可以了

2\ 对于历史commit信息的修改,就必须要使用git rebase了,
git rebase -i HEAD~3,表示要修改当前版本的倒数第3次状态。
这个命令执行之后,会出来3行,
pick: **
pick: **
pick: **
如果你要修改哪个,就把那行的pick改成edit,然后退出,
这时通过git log你可发现,git的最后一次提交已经变成了你选的那个了,这时再通过git commit -amend来对commit进行修改,修改完了之后,
修改了之后要回来,使用git rebase —continue
ok了


git生成patch与打patch

git format-patch与git am搭配使用
git diff与git apply搭配使用

两个节点之间的提交: git format-patch 节点A 节点B
单个节点: git format-patch -1 节点A (-n就表示要生成几个节点的提交)
最近一次提交节点的patch :git format-patch HEAD^ 依次类推……


git配置

1)通过git config配置
查看已经设置的配置
git config –list
使用默认颜色配置
git config –global color.status auto
git config –global color.diff auto
git config –global color.branch auto
默认编辑器设置
git config –global core.editor vim
其实以上这些设置之后会保存在文件~/.gitconfig中

2)修改配置文件~/.gitconfig或者git分支中的.git/config文件,修改完后不用重启,直接生效。
[user]
name = xxx
email = xxx
例如,让git默认使用vim编辑器
[core]
editor = vim
例如,设置git颜色
[color]
status = auto
branch = auto
diff = auto


其他

1、修改文件名最好用git mv filename1 filename2
2、删除文件最好用git rm filename
3、git fetch + git merge = git pull(如果git merge遇到冲突如何处理?)
一种情况是你对一个正在修改代码的的分支执行git pull操作,结果提示:
error: Your local changes to ‘c/environ.c’ would be overwritten by merge. Aborting.
Please, commit your changes or stash them before you can merge.

意思是说merge更新下来的内容会把本地修改的内容覆盖,先提交你的改变或者先将本地修改暂存起来。(因为不管是git pull还是git merge都需要保证工作目录树是干净的)
1)先将本地修改暂存起来
git stash
这样本地的所有修改就都被暂存起来,用git stash list可以看到保存的信息:
stash@{0}: WIP on master: a80c24d …
stash@{0}就是刚才保存的标记

2)暂存了本地修改之后,就可以pull了
git pull

3)还原暂存的内容
git stash pop stash@{0}
系统提示类似的信息:
Auto-merging c/environ.c
CONFLICT (content): Merge conflict in c/environ.c
意思是系统自动合并并修改的内容,但是其中有冲突,需要解决其中的冲突。

4)解决完冲突后就可以正常的提交

另外,合并冲突参考:​​http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001375840202368c74be33fbd884e71b570f2cc3c0d1dcf000​

4、对于服务器上没有审核的代码如果想拉下来实验,可以这样:git fetch ssh://[email protected]:29418/rlxlinux/kernel refs/changes/42/1342/2 && git checkout FETCH_HEAD

将会进入一个新的分支,你可以在这个分支上做任何修改而不会影响到其他的分支,一旦实验ok,也可以通过这个分支新建一个分支。


标签:HEAD,git,stash,修改,diff,commit
From: https://blog.51cto.com/u_15854579/5809889

相关文章

  • 如何使用码云、git
    码云官网https://gitee.com/ 注册登录新建仓库输入名称,其他的自己选吧,然后创建Git全局设置:gitconfig--globaluser.name"默永"//用户名gitconfig--globalu......
  • git 第一次拉取和提交
    文章目录​​一、第一步首先拉取代码​​​​正常使用我这里做测试添加了个测试文件夹​​​​切换分支并且提交修改内容(如果是想提交到master就不用替换)​​​​二、如果......
  • 学习git使用
    文章目录​​选择git的位置​​​​第一步:选择好位置之后右击​​​​第二步:执行命令gitinit​​​​设置全局​​​​第三步:选择git的克隆命令gitclone网址​​​​第四......
  • IDEA中集成使用git
    在idea中配置git安装好IntelliJIDEA后,如果Git安装在默认路径下,那么idea会自动找到git的位置,如果更改了Git的安装位置则需要手动配置下Git的路径。选择File→Settings打开......
  • 解决git每次拉取都需要输入账号密码的问题
    1.在要拉取的目录里空白处右击,点击"GitBashHere"启动git命令行;2.在命令行里执行"gitconfig--globalcredential.helperstore",这会在gitconfig目录下创建一个文件,用于......
  • git上传大小超过100M文件(gitee)
    文章目录   安装LFS   开启LFS功能   选择文件类型   配置远程仓库   上传大文件   报LFS错今天上传项目文件到gitee上面,出现错误remote:error:......
  • 【HDLBits刷题笔记】11 Shift Regiters&More Circuits
    Shift4异步复位同步置数和使能。moduletop_module(inputclk,inputareset,//asyncactive-highresettozeroinputload,inputena,inp......
  • idea中本地git如何切换分支
    原文链接:https://blog.csdn.net/weixin_47120348/article/details/118734762首先要查看分支  localbranches是代表本地分支Master分支是主分支,其他的自定义分支,rem......
  • IDEA切换git分支(从本地切换、从远程拉取后切换)
    链接:https://www.jianshu.com/p/8a5d6a93c0a8:https://www.cnblogs.com/isme-zjh/p/15612035.html场景:在多人开发中,需要在主分支的基础上创建一些分支去分配给小组或者......
  • Git的基本使用
    Git的安装与基本操作:10分钟搭建自己的Git仓库:​​https://mp.weixin.qq.com/s/6GyYlR9lpVcjgYmHMYLi0w​​IDEA中的Git操作,看这一篇就够了!: ​​码云帮助中心​​​​https:......