msysgit / git-cheetah Goto Github PK
View Code? Open in Web Editor NEWA concise and small shell extension for Git
License: GNU General Public License v2.0
A concise and small shell extension for Git
License: GNU General Public License v2.0
I started by "git gui" selected git clone, and the resulting master branch was not connected to the remote origin, so that "git pull" failed there.
When I start by "git clone", I can immediately proceed with "git pull"
The difference can be checked in .git/config, in section branch.master.
Some git settings for the following would be nice. Regarding the discussion in #20, the settings don't need to be located in %appdata%
, you can just as easily store them in a c:\program files (x86)\Git\config.ini
or some such, or in git config
settings in $HOME/.gitconfig
, or in a registry entry (there should be some way to abstract between gconf and the registry...)
I started to check out whether or not the patch linked in #20 still works, however I am unable to install msysgit. One would think this is related to the fact that the installer places sh.exe in Git for Windows SDK works fine, I just have to get around to trying it.c:\msysgit\install_tmp
, but copying the contents of c:\msysgit\install_tmp
to c:\msysgit
and rerunning the netinstall doesn't help. The netinstall is the "easiest" way to install msysgit, implying there's a less easy way, but I have no idea what the less easy way is, as it's not mentioned anywhere.
Hi, I'd like to adjust the content of the menu, removing unused item, e.g. "Add all files".
Is that possible without rebuilding git cheetah?
Stepan
Users using ConEmu can configure it to be the system's default terminal emulator. I think it would be a good idea for the "Git Bash" Cheetah option to respect this choice.
win7, git bash 1.9.5 (was happening for many weeks for me at least since 1.9.4)
I've started noticing that one of my repos is causing crashes / unresponsiveness / extremely long processing time (~40seconds) in windows explorer (Windows 7) when I right click the folder, or inside the folder (on some file or blank space).
This was happening only for a certain git repo and not the others.
I investigated and it seems the issue is the contents of certain files in .git
folder.
Here's a script with a minimum working example in Windows 7 (tested on two machines):
#!/bin/bash
mkdir -p /d/xkiller/.git
cd /d/xkiller/.git
mkdir refs
mkdir objects
echo "ref: refs/heads/master" > HEAD
echo "# pack-refs with: peeled fully-peeled" >> packed-refs
node -e 'for(var i=0;i<360; i++) console.log("2aa83bb279c1f10d11fca7ee46e52869b3c4ee67 refs/heads/branch" + i) ;' >> packed-refs
(I was lazy and used nodejs to create packed-refs file)
D:/xkiller
folder.D:
in windows explorerxkiller
. It should hang your explorer window for 40+ secondsIt seem the issue at least partially is the length of packed-refs
file, but I'm not sure if this is the only one (when I decrease file to be <250 lines the problem - in this particular scenario at least - goes away). It's pretty hard and time consuming to black-box-debug it :)
Can you please check if you can reproduce the issue?
Far Manager executes the following command prior to running cmd/bat files when git_shell_ext64.dll
is registered: git rev-parse --show-prefix
.
This PR #11 fails and hangs Far Manager when a Git menu command is clicked. Tested on Vista (x86).
So the problem must be with the pipes/redirected output since it works pre PR, albeit reporting spurious error messages. Maybe it is waiting on a duplicated handle that should have been closed? Perhaps it combines stdout and stderr.
Incidentally, this will not actually compile in Visual Studio because the *debug
variable is not declared at the beginning of the exec_program_v
function which MSVC requires for .c files.
When the WM_SETTINGCHANGE message is received by windows shell (explorer), then the environment variables get updated.
It looks like that starting a git-bash via the explorer context-menu does not reflect these changes even though explorer itself already did reflect these changes.
Start a bash via WIN+R -> bash has reflected the changes for example.
Some example code is probably here: http://www.ghisler.ch/board/viewtopic.php?t=16292
On Vista duplicated Git menu entries are added when you right-click a folder in the Folders pane
This is because the Shell calls the handler for the Directory\Background progid first (with a folder pidl), then calls it again for the other entries with a data object. So the trick is to check if the Git menu has already been written.
One way you can do this is by using InsertMenuItem
on all menu entries and adding a unique identifier (your module handle, for example) to the dwItemData
member of the item structure.
MENUITEMINFO mii = { sizeof(mii) };
mii.cbSize = sizeof(MENUITEMINFO);
mii.fMask = MIIM_STRING | MIIM_ID | MIIM_DATA; // add MIIM_SUBMENU for a sub menu
mii.dwItemData = (ULONG_PTR) hInstance;
...
InsertMenuItem(hMenu, menuIndex, TRUE, &mii)
Then in the QueryContextMenu function you can check if any menu item has this value and act accordingly:
MENUITEMINFO mii = { sizeof(mii) };
mii.cbSize = sizeof(MENUITEMINFO);
mii.fMask = MIIM_DATA;
// get the number of existing menu entries
int count = GetMenuItemCount(hMenu);
for (int i = 0; i < count; ++i)
{
// get the item data
GetMenuItemInfo(hMenu, i, TRUE, &mii);
if (mii.dwItemData == (ULONG_PTR) hInstance)
{
// menu already written
return S_OK;
}
}
// menu not written
...
I had the same problem in an extension I was working on, and solved it with this solution.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.