Comments (9)
It looks like you are using an older version of the script. I rewrote a big part of the Perl script. Can you try with the latest (commit 762871a)?
Also, can you tell me more information about your configuration?
- Which diff tool are you using?
- How did you set diff.tool or merge.tool?
from git-diffall.
Ok, I updated the code and run some more tests, here's the rundown, but first a recap on my settings:
❯ git config alias.dd
diffall --extcmd=/home/grota/local/bin/vimdirdiff.sh
❯ cat ~/local/bin/vimdirdiff.sh
#!/bin/sh
vim -f '+next' '+execute "DirDiff" argv(0) argv(1)' $@
case A: a simple repo with just a couple of file modifed, no submodules involved.
❯ git diffall --extcmd=meld
...works...
❯ git dd
...works...
case B: repo with files and submodules modified.
❯ git diffall --extcmd=meld
No such file or directory at /usr/lib/git-core/git-diffall line 116.
❯ git dd
No such file or directory at /usr/lib/git-core/git-diffall line 116.
from git-diffall.
I forgot to specify that my diff.tool
is empty and
❯ git config merge.tool
vimdiff
from git-diffall.
Using the same setup (including the 'dd' alias), I have not been able to replicate this error. If you have time, can you please tell me:
- What platform you are using? (Linux, Mac, Windows? including the version)
- What version of Git you are using? (output of
git --version
) - For the range that is causing the error, can you post the output of
git diff --raw <range>
?
Is this a public repo that I could try to test against? I cloned your rcfiles
repo, but there are no modifications to .gitmodules
after the initial commit.
from git-diffall.
sure,
- Ubuntu 11.10
- git version 1.7.5.4
- here it is, it's a simple wc->index diff, so no arguments:
❯ git diff --raw
:160000 160000 0838b05... 0000000... M bin/git-diffall
:100644 100644 8c15b10... 0000000... M git/_gitconfig
:100644 100644 18dde99... 0000000... M pentadactyl/_pentadactylrc
:160000 160000 f53be88... f53be88... M private
:100644 100644 2accde8... 0000000... M tmux/_tmux.conf
and here's the git diff (some bits pruned), also it's a bit of a WIP so please don't mind the content 😁
diff --git i/bin/git-diffall w/bin/git-diffall
index 0838b05..762871a 160000
--- i/bin/git-diffall
+++ w/bin/git-diffall
@@ -1 +1 @@
-Subproject commit 0838b05556b608ca82d613c0a0e01dab97ab1511
+Subproject commit 762871a118ef287f86f4071dc93e536690b01f16
diff --git i/git/_gitconfig w/git/_gitconfig
index 8c15b10..390f5f9 100644
--- i/git/_gitconfig
+++ w/git/_gitconfig
@@ -18,7 +18,7 @@
# Passing --extcmd bypasses diff.tool and merge.tool (a valid option must be set, though)
# --copy-back applies the modifications made on the temp rhs tree back to git's working copy.
# ONLY the rhs tree will be copied to the working copy. The lhs will be discarded.
- dd = diffall --extcmd=~/local/bin/vimdirdiff.sh
+ dd = diffall --extcmd=/home/grota/local/bin/vimdirdiff.sh
vdd = -c merge.tool=meld diffall --copy-back
# Defines a diff mode, you can then put in .gitattributes
@@ -43,3 +43,12 @@
[tig "bind"]
generic = up move-up
generic = down move-down
+# vim: set ft=gitconfig:
+# merge manually until git 1.7.10, or use stgit http://procode.org/stgit/
+[user]
+ name = Giuseppe Rota
+ email = xxxxxx
+
+[github]
+ token = xxxxxxxxxx
+ user = xxxx
diff --git i/pentadactyl/_pentadactylrc w/pentadactyl/_pentadactylrc
index 18dde99..867c1ad 100644
--- i/pentadactyl/_pentadactylrc
+++ w/pentadactyl/_pentadactylrc
@@ -51,9 +51,10 @@ set mapleader=','
set newtab=help,prefs
set titlestring="Firefox / Pentadactyl"
set hintkeys='asdfhjklgqwerpoiuyt'
-set passkeys+=mail.google.com:jkroaefu<CR>gi#
+set passkeys+=mail.google.com:jkroaefu<CR>gi#l
"set wildmode=longest,full
set defsearch=gg
+set go+=B
highlight Hint font-size: 14px; background: rgba(210,1,133,0.8) !important; border: 2px solid rgb(165,1,105); font-weight: bold; color: white; font-family: Helvetica; line-height:1em;
highlight HintActive background: rgba(145,197,43,0.8) !important;
diff --git i/private w/private
--- i/private
+++ w/private
@@ -1 +1 @@
-Subproject commit f53be889043c6ca7885f98b17247a470c00273bb
+Subproject commit f53be889043c6ca7885f98b17247a470c00273bb-dirty
diff --git i/tmux/_tmux.conf w/tmux/_tmux.conf
index 2accde8..c6bb51e 100644
--- i/tmux/_tmux.conf
+++ w/tmux/_tmux.conf
@@ -50,6 +50,7 @@ set -g status-justify centre
set -g status-left-length 40
# not very much useful for now
#status-right ""#22T" %H:%M %d-%b-%y"
+set status-right "#(/home/grota/tmux-applets/tmux-cpu-freq 8)"
#setw -g xterm-keys on
#terminal-overrides ""
# }}}
from git-diffall.
I am now able to replicate this error. I found the root cause and will push a fix soon.
Thank you for the bug report and your patience in helping me find the reason.
from git-diffall.
thanks to you!
from git-diffall.
yes, it fixes the core issue. I still see 2 minor annoyances, though, due to the fact the we use the --raw option.
- Referring to the use case above, the
private
submodule (which is -dirty) does not get detected as modified since both "temp" files containSubproject commit f53be889043c6ca7885f98b17247a470c00273bb
, while the right one should probably also contain the same plus '-dirty'. - The temp file for the bin/git-diffall submodule contains
Subproject commit 0000000000000000000000000000000000000000
I don't see an easy way out of this, git-diff --submodule doesn't seem to help eithier, so this is just FYI.
from git-diffall.
These are both valid complaints...I created issue #22 to document them.
from git-diffall.
Related Issues (19)
- Fails when one of the diffs contain a deleted file HOT 1
- trap problem on msysgit shell HOT 9
- $ git diffall saving doesn't save changes made via DiffMerge HOT 2
- Use working tree directory instead of temp directory whenever it matches the right or left hand side of the diff. HOT 5
- Use with DeltaWalker in OS X HOT 3
- Create integration instructions HOT 6
- Git 1.7.7 upgrade causes custom merge tools to fail HOT 6
- quoting of paths breaks limiting diffs to multiple locations HOT 2
- Tag a stable release HOT 2
- [perl branch]: The --extcmd param shouldn't be passed to git plumbing HOT 1
- Problems with submodule support HOT 3
- license is missing HOT 6
- diff.tool or merge.tool should not be required when using --extcmd
- NM
- Not possible to use optional path limiter [-- <path>*] HOT 4
- Using it! HOT 3
- Add better names for temp folders (instead of 'a' and 'b') HOT 1
- Copying files back to working folder HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from git-diffall.