本文将带您了解关于Gitmergetool生成不需要的.orig文件的新内容,同时我们还将为您解释gitmergeorigin的相关知识,另外,我们还将为您提供关于asp.net-mvc-3–当不需要
本文将带您了解关于Git mergetool 生成不需要的 .orig 文件的新内容,同时我们还将为您解释git merge origin的相关知识,另外,我们还将为您提供关于asp.net-mvc-3 – 当不需要/需要使用AntiForgeryToken时?、eclipse git 解决冲突 解决 mergetool 不能使用问题、Git - Merge: refusing to merge unrelated histories、git difftool和mergetool图形化的实用信息。
本文目录一览:- Git mergetool 生成不需要的 .orig 文件(git merge origin)
- asp.net-mvc-3 – 当不需要/需要使用AntiForgeryToken时?
- eclipse git 解决冲突 解决 mergetool 不能使用问题
- Git - Merge: refusing to merge unrelated histories
- git difftool和mergetool图形化
Git mergetool 生成不需要的 .orig 文件(git merge origin)
当我使用 Kdiff3(和我尝试过的其他合并工具)进行合并冲突解决时,我注意到在解决时*.orig
会创建一个文件。有没有办法让它不创建那个额外的文件?
答案1
小编典典一个可能的解决方案git config
:
git config --global mergetool.keepBackup false
执行合并后,可以将带有冲突标记的原始文件保存为带有
.orig
扩展名的文件。
如果此变量设置为,false
则不保留此文件。
默认为true
(即保留备份文件)。
另一种方法是不添加或忽略这些文件,
git mergetool``.orig
使用“ ”后缀保存文件的合并冲突版本。
确保在添加和提交合并或添加*.orig
到您的.gitignore
.
建议使用:
find . -name \*.orig find . -name \*.orig -delete
建议了解 内部差异工具设置 ,无论 git
设置是什么,这些设置也可能生成这些备份文件。
- kdiff3 有自己的设置(参见其手册中的“目录合并”)。
- 其他工具如 WinMerge 可以有自己的备份文件扩展名(WinMerge:
.bak
,如其手册中所述)。
因此,您还需要重置这些设置。
asp.net-mvc-3 – 当不需要/需要使用AntiForgeryToken时?
我正在运行一个相当大的站点,每天都有数千次访问,并且有一个相当大的用户群。
自从我开始迁移到MVC 3之后,我一直在使用多种形式的AntiForgeryToken来修改受保护的数据。
一些其他形式,如登录/注册,现在也使用AntiForgeryToken,但是我首先对他们的需求变得疑惑,有几个原因…
>登录表单要求海报知道正确的凭据。我真的不能想到任何一种csrf攻击将在这里受益。特别是如果我检查请求是从同一个主机(检查引荐来源头)
> AntiForgeryToken标记在每次加载页面时都会生成不同的值。如果我有两个标签打开登录页面,然后尝试发布,第一个将成功加载。第二个将使用AntiForgeryTokenException(首先加载两个页面,然后尝试发布它们)将失败。使用更安全的页面 – 这显然是一个必要的邪恶,登录页面 – 似乎是过分的,只是要求麻烦:S
可能有其他原因为什么会使用/不使用它们的形式的令牌。我假定在每个帖子形式中使用令牌是坏的/过度的,如果是 – 什么样的形式将从中受益,哪些不会受益?
解决方法
恶意用户在他的网站上设置一个类似于您的站点的HTML表单。此表单也可能包含隐藏字段。
他欺骗你的一个网站用户访问他的恶意网址。
>用户认为他在您的网站上,填写表单并将其提交到您的网站。
>如果用户已经在您的网站上进行身份验证,则表单提交成功,并且无人知晓的用户已删除其帐户(或任何您可以想像的)。
因此,您可以在网站的身份验证部分使用防伪令牌,其中包含可以以某种方式修改用户状态的操作。
注意:检查参考标题以确定来自您的站点的请求是不安全的。任何人都可以伪造一个请求并欺骗这个头。
eclipse git 解决冲突 解决 mergetool 不能使用问题
eclipse git 解决冲突 解决 mergetool 不能使用问题
-
本地代码
-
远程代码
第一步 --> 同步远程资源库,检查是否存在冲突
这里有冲突出现
第二步 --> 如果存在冲突,将本地代码提交到本地仓库
**注意:**这里是点击 commit
,而不是点击 commit push
第三步 --> pull远程代码
第四步 --> 使用 merge tool 解决冲突
右键文件,选择 merge tool
第五步 --> 解决冲突
上传自己的本地代码到远程
点击 commit push
完成操作!
原文出处:https://www.cnblogs.com/upuptop/p/12215098.html
Git - Merge: refusing to merge unrelated histories
场景
我在本地有个代码仓库local-A,本地仓库local-A已经和一个远程仓库remote-A关联了。
接着我又在GitHub上新建了一个仓库remote-B,我希望将本地仓库local-A的本地dev分支push到这个新建的远程库remote-B。我的想法是这样的:
- 在本地仓库local-A里添加刚刚新建的远程库remote-B
- 检出(check out)并切换到remote-B的master分支
- 将本地dev分支merge到当前的master分支
- 解决可能发生的冲突后,将改动全部commit并push到远程库remote-B的master分支上
接着当我做到第三步的时候,发现报错如下:
Merge: refusing to merge unrelated histories
看到报错,我又重新操作了一遍,依然是同样的错误。记得以前我也做过类似的操作,但是却没有现在的问题,百度了下,发现可能是git升级之后造成的。
解决方案
因为两个仓库是不同的项目(本地仓库已经跟踪了另外一个远程库了),git默认不允许不相干的项目进行push等操作。如果想要进行这些操作,就需要加入--allow-unrelated-histories
参数才可以合并两个不同的项目:
git merge --squash dev --allow-unrelated-histories
这句命令表示将dev
分支合并到当前分支,这里的两个本地分支各自追踪不同的远程库,需要加入--allow-unrelated-histories
参数才能够完成合并操作而不报错,至于--squash
参数是为了压缩dev
分支原本的commit历史,可以将原本所有的commit历史合成一个commit,以避免当前分支在合并之后掺入了其他项目的commit历史。
参考链接
- 如何去解决fatal: refusing to merge unrelated histories
- git merge --no-ff是什么意思
git difftool和mergetool图形化
1.当然是先安装Beyond Compare3 (此处省略安装步骤,自行百度)
2.设置difftool
git config --global diff.tool bc3
git config --global difftool.bc3.path "/usr/bin/bcompare
git config --global difftool.prompt false
3.设置mergetool
git config --global merge.tool bc3
git config --global mergetool.bc3.path "/usr/bin/bcompare"
git config --global mergetool.bc3.trustExitCode true
____________________________________________________________________________________________
Windows git difftool和mergetool图形化
1.当然是先安装Beyond Compare3 (此处省略安装步骤,自行百度)
2.设置difftool
git config --global diff.tool bc3
git config --global difftool.bc3.cmd "\"c:/program files/beyond compare 3/bcomp.exe\" \"$LOCAL\" \"$REMOTE\""
git config --global difftool.prompt false
3.设置mergetool
git config --global merge.tool bc3
git config --global mergetool.bc3.cmd "\"c:/program files/beyond compare 3/bcomp.exe\" \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\""
git config --global mergetool.bc3.trustExitCode true
____________________________________________________________________________________________
使用时:
diff时,用git difftool <file_name>来查看就会直接弹出bcompare.
merge时,要先用git merge <branch_name> 来merge一下,然后如果提示merge有冲突,才用git mergetool来调用bcompare来merge
---------------------
关于Git mergetool 生成不需要的 .orig 文件和git merge origin的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于asp.net-mvc-3 – 当不需要/需要使用AntiForgeryToken时?、eclipse git 解决冲突 解决 mergetool 不能使用问题、Git - Merge: refusing to merge unrelated histories、git difftool和mergetool图形化等相关内容,可以在本站寻找。
本文标签: