|
Posted
over 15 years
ago
by
Shawn O. Pearce
Google is hosting GitTogether '10, October 25th through 27th,
at its Mountain View, CA headquarters.
Like last year (and the year before that!), this GitTogether
immediately follows the Google Summer of Code mentor summit, so
some of our end-user
... [More]
groups may already have representatives in
the area and might like to attend. We've timed the GitTogether
to follow the summit so we can get some users to attend while they
are still in the area.
Git contributors and users alike are welcome to attend. Admission is
free, but you will need to arrange for your own travel and lodging.
If you are looking at flights try the SJC and SFO airports.
SFO usually has cheaper flights as its a bigger, more active airport.
We are looking to solicit proposals for talks, round-table
discussions, centers of focus for patch hack-a-thons, etc.
A Git Wiki page is being used for planning:
https://git.wiki.kernel.org/index.php/GitTogether10
If you would like to attend, please add your name to the Attendees
list on the wiki page.
--
Shawn.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
|
|
Posted
over 15 years
ago
by
Junio C Hamano
The latest maintenance release Git 1.7.1.1 is available at the
usual places:
http://www.kernel.org/pub/software/scm/git/
git-1.7.1.1.tar.{gz,bz2} (source tarball)
git-htmldocs-1.7.1.1.tar.{gz,bz2} (preformatted docs)
... [More]
git-manpages-1.7.1.1.tar.{gz,bz2} (preformatted docs)
The RPM binary packages for a few architectures are found in:
RPMS/$arch/git-*-1.7.1.1-1.fc11.$arch.rpm (RPM)
Git v1.7.1.1 Release Notes
==========================
Fixes since v1.7.1
------------------
* Authentication over http transport can now be made lazily, in that the
request can first go to a URL without username, get a 401 response and
then the client will ask for the username to use.
* We used to mistakenly think "../work" is a subdirectory of the current
directory when we are in "../work-xyz".
* The attribute mechanism now allows an entry that uses an attribute
macro that set/unset one attribute, immediately followed by an
overriding setting; this makes attribute macros much easier to use.
* We didn't recognize timezone "Z" as a synonym for "UTC" (75b37e70).
* In 1.7.0, read-tree and user commands that use the mechanism such as
checkout and merge were fixed to handle switching between branches one
of which has a file while the other has a directory at the same path
correctly even when there are some "confusing" pathnames in them. But
the algorithm used for this fix was suboptimal and had a terrible
performance degradation especially in larger trees.
* "git am -3" did not show diagnosis when the patch in the message was corrupt.
* After "git apply --whitespace=fix" removed trailing blank lines in an
patch in a patch series, it failed to apply later patches that depend
on the presence of such blank lines.
* "git bundle --stdin" segfaulted.
* "git checkout" and "git rebase" overwrote paths that are marked "assume
unchanged".
* "git commit --amend" on a commit with an invalid author-name line that
lacks the display name didn't work.
* "git describe" did not tie-break tags that point at the same commit
correctly; newer ones are preferred by paying attention to the
tagger date now.
* "git diff" used to tell underlying xdiff machinery to work very hard to
minimize the output, but this often was spending too many extra cycles
for very little gain.
* "git diff --color" did not paint extended diff headers per line
(i.e. the coloring escape sequence didn't end at the end of line),
which confused "less -R".
* "git fetch" over HTTP verifies the downloaded packfiles more robustly.
* The memory usage by "git index-pack" (run during "git fetch" and "git
push") got leaner.
* "GIT_DIR=foo.git git init --bare bar.git" created foo.git instead of bar.git.
* "git log --abbrev=$num --format='%h' ignored --abbrev=$num.
* "git ls-files ../out/side/cwd" refused to work.
* "git merge --log" used to replace the custom message given by "-m" with
the shortlog, instead of appending to it.
* "git notes copy" without any other argument segfaulted.
* "git pull" accepted "--dry-run", gave it to underlying "git fetch" but
ignored the option itself, resulting in a bogus attempt to merge
unrelated commit.
* "git rebase" did not faithfully reproduce a malformed author ident, that
is often seen in a repository converted from foreign SCMs.
* "git reset --hard" started from a wrong directory and a working tree in
a nonstandard location is in use got confused.
* "git send-email" lacked a way to specify the domainname used in the
EHLO/HELO exchange, causing rejected connection from picky servers.
It learned --smtp-domain option to solve this issue.
* "git send-email" did not declare a content-transfer-encoding and
content-type even when its payload needs to be sent in 8-bit.
* "git show -C -C" and other corner cases lost diff metainfo output
in 1.7.0.
* "git stash" incorrectly lost paths in the working tree that were
previously removed from the index.
* "git status" stopped refreshing the index by mistake in 1.7.1.
* "git status" showed excess "hints" even when advice.statusHints is set to false.
And other minor fixes and documentation updates.
----------------------------------------------------------------
Changes since v1.7.1 are as follows:
Alexey Mahotkin (1):
xdiff/xmerge.c: use memset() instead of explicit for-loop
Bert Wesarg (1):
diff: fix coloring of extended diff headers
Björn Gustavsson (1):
apply: Allow blank *trailing* context lines to match beyond EOF
Björn Steinbrink (1):
diff: Support visibility modifiers in the PHP hunk header regexp
Bo Yang (1):
blame-options.txt: Add default value for `-M/-C` options.
Brandon Casey (1):
t/t9001: use egrep when regular expressions are involved
Brian Downing (1):
unpack-trees: Make index lookahead less pessimal
Brian Gernhardt (4):
send-email: Cleanup { style
send-email: Don't use FQDNs without a '.'
Document send-email --smtp-domain
send-email: Cleanup smtp-domain and add config
Charles Bailey (2):
stash: Don't overwrite files that have gone from the index
stash tests: stash can lose data in a file removed from the index
Chris Webb (1):
exec_cmd.c: replace hard-coded path list with one from
Christian Couder (3):
diff: fix "git show -C -C" output when renaming a binary file
commit: use value of GIT_REFLOG_ACTION env variable as reflog message
Documentation: grep: fix asciidoc problem with --
Clemens Buchacher (7):
do not overwrite files marked "assume unchanged"
Documentation: git-add does not update files marked "assume unchanged"
test get_git_work_tree() return value for NULL
get_cwd_relative(): do not misinterpret suffix as subdirectory
setup: document prefix
quote.c: separate quoting and relative path generation
ls-files: allow relative pathspec
Dmitry Potapov (1):
hash_object: correction for zero length file
Gary V. Vaughan (1):
git-compat-util.h: use apparently more common __sgi macro to detect SGI IRIX
Gerrit Pape (1):
git-submodule.sh: properly initialize shell variables
Henrik Grubbström (3):
attr: Fixed debug output for macro expansion.
attr: Allow multiple changes to an attribute on the same line.
attr: Expand macros immediately when encountered.
Ian McLean (1):
Fix "Out of memory? mmap failed" for files larger than 4GB on Windows
Ian Ward Comfort (1):
rebase -i: Abort cleanly if new base cannot be checked out
Jakub Narebski (1):
autoconf: Check if exists and set HAVE_PATHS_H
Jay Soffian (3):
commit.txt: clarify how --author argument is used
am: use get_author_ident_from_commit instead of mailinfo when rebasing
gitweb/Makefile: fix typo in gitweb.min.css rule
Jeff King (7):
handle "git --bare init " properly
docs: clarify meaning of -M for git-log
remove over-eager caching in sha1_file_name
pull: do nothing on --dry-run
commit: give advice on empty amend
Makefile: default pager on AIX to "more"
notes: check number of parameters to "git notes copy"
Johannes Sixt (1):
Thread-safe xmalloc and xrealloc needs a recursive mutex
Jonathan Nieder (25):
t7006: guard cleanup with test_expect_success
t5704 (bundle): add tests for bundle --stdin
fix "bundle --stdin" segfault
test-lib: Let tests specify commands to be run at end of test
commit --amend: cope with missing display name
Documentation/shortlog: scripted users should not rely on implicit HEAD
t4201 (shortlog): guard setup with test_expect_success
t4201 (shortlog): Test output format with multiple authors
shortlog: Document and test --format option
test-lib: some shells do not let $? propagate into an eval
cherry-pick: do not dump core when iconv fails
Documentation/notes: document format of notes trees
Documentation/notes: describe content of notes blobs
Documentation/notes: add configuration section
Documentation/notes: simplify treatment of default notes ref
Documentation/log: add a CONFIGURATION section
Documentation/notes: simplify treatment of default display refs
Documentation/notes: clean up description of rewriting configuration
Documentation/notes: nitpicks
post-receive-email: document command-line mode
Documentation/checkout: clarify description
gitignore.5: Clarify matching rules
rebase -i -p: document shortcomings
Documentation/checkout: clarify description
add-interactive: Clarify “remaining hunks in the file”
Junio C Hamano (10):
am -3: recover the diagnostic messages for corrupt patches
clone: quell the progress report from init and report on clone
t9129: fix UTF-8 locale detection
common_prefix: simplify and fix scanning for prefixes
Prepare draft release notes to 1.7.1.1
Update draft release notes to 1.7.1.1
tests: remove unnecessary '^' from 'expr' regular expression
Update draft release notes to 1.7.1.1
Update draft release notes to 1.7.1.1
Git 1.7.1.1
Leif Arne Storset (1):
Documentation/config.txt: GIT_NOTES_REWRITE_REF overrides notes.rewriteRef
Marcus Comstedt (1):
Add "Z" as an alias for the timezone "UTC"
Markus Heidelberg (4):
t7508: add test for "git status" refreshing the index
git status: refresh the index if possible
t7508: add a test for "git status" in a read-only repository
Documentation: rebase -i ignores options passed to "git am"
Michael J Gruber (10):
index-pack: fix trivial typo in usage string
t7508: test advice.statusHints
wt-status: take advice.statusHints seriously
Documentation: fix minor inconsistency
Documentation/gitdiffcore: fix order in pickaxe description
Documentation/SubmittingPatches: clarify GMail section and SMTP
completion: --set-upstream option for git-branch
Makefile: reenable install with NO_CURL
Documentation/config: describe status.submodulesummary
Documentation: A...B shortcut for checkout and rebase
Michal Sojka (1):
test-lib.sh: Add explicit license detail, with change from GPLv2 to GPLv2+.
Nazri Ramliy (1):
Documentation/pretty-{formats,options}: better reference for "format:"
Nicolas Pitre (4):
Make xmalloc and xrealloc thread-safe
index-pack: smarter memory usage when resolving deltas
index-pack: rationalize unpack_entry_data()
index-pack: smarter memory usage when appending objects
Pete Harlan (1):
clone: reword messages to match the end-user perception
Peter Collingbourne (4):
Generalise the unlink_or_warn function
Implement the rmdir_or_warn function
Introduce remove_or_warn function
Remove a redundant errno test in a usage of remove_path
Philippe Bruhat (1):
Git.pm: better error message
Ping Yin (1):
Documentation/git-send-email: Add "Use gmail as the smtp server"
Ramkumar Ramachandra (1):
SubmittingPatches: Add new section about what to base work on
Ramsay Allan Jones (4):
Makefile: Fix 'clean' target to remove all gitweb build files
msvc: Fix some "expr evaluates to function" compiler warnings
msvc: Fix some compiler warnings
notes: Initialise variable to appease gcc
René Scharfe (3):
git diff too slow for a file
remove ecb parameter from xdi_diff_outf()
Fix checkout of large files to network shares on Windows XP
Scott Chacon (1):
Prompt for a username when an HTTP request 401s
Shawn O. Pearce (16):
tag.c: Correct indentation
tag.h: Remove unused signature field
tag.c: Refactor parse_tag_buffer to be saner to program
tag.c: Parse tagger date (if present)
describe: Break annotated tag ties by tagger date
http.c: Remove bad free of static block
t5550-http-fetch: Use subshell for repository operations
http.c: Tiny refactoring of finish_http_pack_request
http.c: Drop useless != NULL test in finish_http_pack_request
http.c: Don't store destination name in request structures
http.c: Remove unnecessary strdup of sha1_to_hex result
Introduce close_pack_index to permit replacement
Extract verify_pack_index for reuse from verify_pack
Allow parse_pack_index on temporary files
http-fetch: Use index-pack rather than verify-pack to check packs
http-fetch: Use temporary files for pack-*.idx until verified
Sverre Rabbelier (1):
Gitweb: ignore built file
Tay Ray Chuan (18):
t5541-http-push: add test for URLs with trailing slash
http: make end_url_with_slash() public
remote-curl: ensure that URLs have a trailing slash
http.c::new_http_pack_request: do away with the temp variable filename
t7604-merge-custom-message: shift expected output creation
t7604-merge-custom-message: show that --log doesn't append to -m
merge: update comment
merge: rename variable
fmt-merge-msg: minor refactor of fmt_merge_msg()
fmt-merge-msg: refactor merge title formatting
fmt-merge-msg: add function to append shortlog only
merge: --log appends shortlog to message if specified
GIT-VERSION-GEN: restrict tags used
t7502-commit: fix spelling
show-branch: use DEFAULT_ABBREV instead of 7
t7502-commit: add tests for summary output
t7502-commit: add summary output tests for empty and merge commits
commit::print_summary(): don't use format_commit_message()
Thomas Rast (2):
t/README: document --root option
send-email: ask about and declare 8bit mails
Tim Henigan (1):
Documentation/SubmittingPatches: Fix typo in GMail section
Tor Arntsen (1):
Change C99 comments to old-style C comments
Will Palmer (1):
pretty: Respect --abbrev option
Zhang Le (1):
git-mailinfo documentation: clarify -u/--encoding
bert Dvornik (1):
start_command: close cmd->err descriptor when fork/spawn fails
Ævar Arnfjörð Bjarmason (3):
Move t6000lib.sh to lib-*
Turn setup code in t2007-checkout-symlink.sh into a test
notes: Initialize variable to appease Sun Studio
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
|
|
Posted
over 15 years
ago
by
Luke Kenneth Casson Leighton
as more than just a proof-of-concept to get pyjamas out of "a nice
toy, doesn't do much, great demos, shame about real life" mode, i've
created yet another git repository browser. this one, thanks to
pyjamas, obviously runs as both a desktop
... [More]
application and also as a
web application - same source code.
pyjamasgitweb is actually two independent happily small projects. the
first is simply a JSONRPC-based git web server (in python, using
python-git) and the second is a matching front-end.
the front-end is happily bare but functional. a demo is here (please
be nice to it) where you will see immediately a total lack of colour
or even borders:
http://pyjs.org/pygit
if anyone wants the source code, or to help contribute, it's at:
git clone [email protected]:pyjamasgitweb
to start the server, read the README, install the dependencies, then do:
$ cd jsonservice
$ python srv.py {path to top level of repository} &
$ cd ../pyjamas
$ ./build.sh # requires symlink ~/bin/pyjsbuild to sandbox
$ firefox http://127.0.0.1:8000/outputJSONRPCService.html &
$ python JSONRPCService.py # for the desktop version
obviously, if you just want to write your own JSONRPC client, you
don't need pyjamas...
l.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
|
|
Posted
over 15 years
ago
by
Lars Hjemli
A fresh bugfix-release of cgit (a web interface for git repositories)
is now available at http://hjemli.net/git/cgit.
Changes since 0.8.3.1
=====================
Daniel Milde (1):
Clear the whole context
Florian Pritz (1):
ui-shared.c:
... [More]
fix segfault when repo is empty
Lars Hjemli (2):
shared.c: avoid memory leak during diff
CGIT 0.8.3.2
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
|
|
Posted
over 15 years
ago
by
Jonas Fonseca
Salut,
A new version of tig is available. Thanks to everyone who provided
patches and input.
In the pipe-line are changes to finally rewrite the graph visualisation
(currently being rebased in wip/graph) and retire the log view.
What is tig?
... [More]
------------
Tig is an ncurses-based text-mode interface for git. It functions mainly
as a git repository browser, but can also assist in staging changes for
commit at chunk level and act as a pager for output from various git
commands.
- Homepage: http://jonas.nitro.dk/tig/
- Manual: http://jonas.nitro.dk/tig/manual.html
- Tarballs: http://jonas.nitro.dk/tig/releases/
- Git URL: git://repo.or.cz/tig.git
- Gitweb: http://repo.or.cz/w/tig.git
Release notes
-------------
Incompatibilities:
- Encode everything internally as UTF-8. This can affect performance,
but should in general improve handling of character lengths etc.
Also, to properly handle UTF-8 environments use ncurses with wide
character support.
- The use of TIG_{MAIN,DIFF,LOG,TREE,BLOB}_CMD environment variables
has been deprecated. To allow configuration of the diff view,
TIG_DIFF_OPTS can be used.
Improvements:
- Plug several memory leaks.
- Command line arguments are split into diff, revision, and file
arguments and made available as %(diffargs), %(revargs), and
%(fileargs). Diff view will limit diffs using %(fileargs).
- Status view: update the file variable when a line is selected so
%(file) works as expected.
- Branch view: add %(branch) symbol providing access to the selected
branch.
- Branch view: add entry to browse all branches (uses git-log's --all
flag).
- Abbreviation of author names can now be configured and toggled.
- Mark detached heads with [HEAD].
- Add support for displaying dates in local time.
Bug fixes:
- Status view: fix usage from sub directories, which was broken by the
changes made to support blame view from sub directories.
- Fix text expansion to not truncate long lines
- Fix parsing of boolean show-date values.
- Fix relative date.
- Fix unbind to behave as if the keybinding was never defined.
- Fix unbind to also cover built-in run requests.
- Fix parsing of unknown keymap names.
- Blame view: fix parent blame to detect renames. It uses "previous"
line info from the blame porcelain output added in git version 1.6.3.
Change summary
--------------
The diffstat and log summary for changes made in this release.
INSTALL | 19 -
Makefile | 13
NEWS | 42
TODO | 2
VERSION | 2 -
contrib/announcement.sh | 2 -
contrib/aspell.dict | 13 -
contrib/release.sh | 2 -
contrib/tig-completion.bash | 2 -
manual.txt | 81 --
tig.1.txt | 29 -
tig.c | 1724 ----------------
tigrc.5.txt | 29 -
13 files changed, 1065 insertions( ), 895 deletions(-)
1 Ingmar Vanhassel
2 Jeff King
89 Jonas Fonseca
2 Simon Gerber
1 Simon Ruderich
1 jipey
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
|
|
Posted
over 15 years
ago
by
Frank Li
Download:
http://code.google.com/p/tortoisegit/downloads/detail?name=TortoiseGit-1.5.2.0-32bit.msi
http://code.google.com/p/tortoisegit/downloads/detail?name=TortoiseGit-1.5.2.0-64bit.msi
= Release 1.5.2.0 =
== Bug Fix ==
* Fixed issue #454: Fix
... [More]
"check Now" can't work at setting dialog
* Fixed issue #457: Git copy versioned item(s) here adds all unversioned files
* put pull, push and fetch to external manual.
* Fixed issue #460: [Less]
|
|
Posted
over 15 years
ago
by
Clemens Buchacher
Hi,
I am currently working on a git plugin for vim. My aim is for it to imitate
much of git-gui's functionality. Right now, it is still closer to "add -p".
But I believe it's already useful. And since I'm new to vim scripting, it
can use some
... [More]
testing.
To install, copy diffit.vim (attached to this email) to
~/.vim/plugin/diffit.vim .
To toggle diffit mode, use d, where is '\' by default.
Control keys:
d toggle diffit mode
s stage hunk
d skip file
I hope you like it. Have fun!
Clemens
---
You can clone diffit from here.
git://repo.or.cz/diffit.git
http://github.com/drizzd/diffit.git
" ============================================================================
" File: diffit.vim
" Description: Show diff for current buffer
" Maintainer: Clemens Buchacher
" License: GPLv2
"
" ============================================================================
if exists('loaded_diffit')
finish
end
let loaded_diffit = 1
let s:diffit_version = '0'
"for line continuation - i.e dont want C in &cpo
let s:old_cpo = &cpo
set cpo&vim
map d :call Diffit()
function s:Error(msg)
echohl ErrorMsg
echon 'diffit: ' . a:msg
echohl None
endfunction
function s:Info(msg)
echon 'diffit: ' . a:msg
endfunction
function s:Die(msg)
call s:Error('fatal: ' . a:msg)
throw "diffit"
endfunction
function s:System(...)
let out = system(join(a:000))
if v:shell_error
call s:Die(a:0 . ' failed: ' . out)
end
return out
endfunction
function s:Header()
let header = []
for n in range(1, line('$'))
let l = getline(n)
if l =~ '^diff --git ' ||
\l =~ '^diff --cc ' ||
\l =~ '^diff --combined ' ||
\l =~ '^old mode ' ||
\l =~ '^new mode ' ||
\l =~ '^--- ' ||
\l =~ '^ '
call add(header, l)
continue
end
if l !~ '^index '
break
end
endfor
return [header, n - 1]
endfunction
function s:Exit()
let view = b:view
bdelete
call winrestview(view)
endfunction
function s:Diffit()
if exists('b:diffit') && b:diffit == 1
call s:Exit()
return
end
try
call s:Diffit_init()
catch /^diffit$/
if exists('b:diffit') && b:diffit == 1
call s:Exit()
end
endtry
endfunction
function s:Read_diff(pathlist)
let diff = tempname()
let path = ''
for path in a:pathlist
let out = s:System('git diff', '--', path, '>', diff)
if getfsize(diff) > 0
break
end
endfor
return [diff, path]
endfunction
function s:Write_diff(diff, orig)
setlocal modifiable
silent 1,$delete _
silent exe 'read ' . a:diff
silent 1delete _
setlocal nomodifiable
if a:orig
let orig_pos = b:view['lnum']
let new_pos = s:Diffpos(orig_pos)
let view = copy(b:view)
let view['lnum'] = abs(new_pos)
if new_pos > 0
let view['topline'] = new_pos - orig_pos
let view['topline'] = max([1, view['topline']])
else
let view['topline'] = -new_pos - 4
end
let view['curswant'] = 1
let view['col'] = 1
call winrestview(view)
else
call cursor(abs(s:Diffpos(0)), 1)
end
endfunction
function s:Diffit_init()
update
let out = s:System('git rev-parse', '--is-inside-work-tree')
if v:shell_error == 128 || split(out)[0] != 'true'
call s:Error('not inside work tree')
return
elseif v:shell_error
call s:Error('git rev-parse failed: ' . out)
return
end
let out = s:System('git diff', '--name-only')
let pathlist = split(out, '\n')
if empty(pathlist)
call s:Info('no changes')
return
end
let orig_path = bufname('%')
let k = index(pathlist, orig_path)
if k > 0
call remove(pathlist, k)
call insert(pathlist, orig_path, 0)
end
let [diff, path] = s:Read_diff(pathlist)
let orig = path == orig_path
if getfsize(diff) == 0
call s:Info('no changes')
return
end
let view = winsaveview()
silent! exe 'edit ' . tempname()
let b:pathlist = pathlist
let b:view = view
let b:diffit = 1
setf git-diff
setlocal noswapfile
setlocal buftype=nofile
setlocal nowrap
setlocal foldcolumn=0
setlocal nobuflisted
iabc
nnoremap s :call Stage_hunk(line('.'))
nnoremap d :call Next_diff()
call s:Write_diff(diff, orig)
echon '"' . path . '"'
endfunction
function s:Next_diff()
call remove(b:pathlist, 0)
let [diff, path] = s:Read_diff(b:pathlist)
if getfsize(diff) > 0
call s:Write_diff(diff, 0)
echon '"' . path . '"'
else
call s:Exit()
end
endfunction
function s:Diffpos(orig_pos)
let diffpos = -1
let hunk_start = 1
let hunk_end = 1
call cursor(1, 1)
while search('^@@', 'W') > 0
let [start, length] = matchlist(getline('.'),
\'^@@ -[0-9]*,[0-9]* \%(\([0-9]*\),\)\?\([0-9]*\)')[1:2]
if empty(start)
let start = 1
end
if diffpos < 0
let diffpos = -line('.')
end
if start > a:orig_pos
break
end
let diffpos = line('.')
let hunk_start = start
let hunk_end = hunk_start length - 1
endwhile
if diffpos < 0
return diffpos
end
let pos = hunk_start - 1
let target_pos = min([a:orig_pos, hunk_end])
while diffpos < line('$')
if getline(diffpos) =~ '^-'
let diffpos = 1
continue
end
if pos >= target_pos
break
end
let diffpos = 1
let pos = 1
endwhile
if getline(diffpos) =~ '^-'
return -last
else
return diffpos
end
endfunction
function s:Stage_hunk(pos)
call cursor(a:pos, 1)
let h_start = search('^@@', 'bcW')
if h_start == 0
return
end
call cursor(h_start, 1)
let h_end = search('^@@', 'nW')-1
if h_end < 0
let h_end = line('$')
end
let h_range = h_start . ',' . h_end
let [patch, header_end] = s:Header()
call extend(patch, getline(h_start, h_end))
let patchfile = tempname()
call writefile(patch, patchfile)
let out = s:System('git apply', '--cached', '--whitespace=nowarn', patchfile)
setlocal modifiable
silent exe h_range . 'delete _'
setlocal nomodifiable
if line('$') == header_end
call s:Next_diff()
return
end
endfunction
let &cpo = s:old_cpo [Less]
|
|
Posted
over 15 years
ago
by
Sitaram Chamarty
Hello,
[I'm sending this to the larger git community because I'd like to hear
from people interested in this sort of functionality and willing to help
me test it].
Gitolite's current "pu" branch has acquired some features by which it
can now be
... [More]
used to do things like the "fork" operation of github (and
presumably other similar services). Gitolite will never be web-based,
or GUI, etc., so it's not even remotely in the same class as github but
for some urgent, simple, needs this can be used to emulate forking
repositories a la github.
What follows is a very short howto, for the curious. It assumes some
knowledge of basic gitolite usage only because I didn't want to make
this too lengthy; feel free to ask if needed.
Admin tasks (one time):
* use the "pu" branch; the current tip is the commit called "(adc)
documentation". "adc" stands for "admin-defined commands"
* install it, then edit `~/.gitolite.rc` on the server to
uncomment/update the following lines as shown (or similar):
$GL_WILDREPOS = 1;
$GL_ADC_PATH = "/home/git/adc"; # or any convenient directory
* copy the files from contrib/adc in the gitolite source to the above
path on the server.
* add the following lines to the default gitolite.conf that the
install gives you:
repo CREATER/.+
C = @all
RW+ = CREATER
RW = WRITERS
R = @all
All repos created now are public-readable by default. Replace the
"@all" in the last line with "READERS" if you want the repos to be
private by default.
User tasks:
This is how users would use it, once their pubkeys have been added to
the keydir/ and pushed as usual. We assume this is being done from
user "alice"'s account.
Creating a new repo on the server:
git clone git@server:alice/foo
# create and clone an empty repo to start working
git push [--all] git@server:alice/foo [refspec]
# or, create and push from an existing repo in one shot
Removing an existing repo that you no longer need (be careful!):
ssh git@server rmrepo alice/foo
Listing all repos you have access to (will show yours as well as others'
repos that you have been given access to):
ssh git@server expand [optional-pattern]
Forking user "bob"'s "bar" repo (assuming you have at least read access):
ssh git@server fork bob/bar alice/bar
Setting permissions for a repo you own:
ssh git@server setperms alice/bar
RW bob
R eve mallory
Getting permissions for a repo you own:
ssh git@server getperms alice/bar
# prints:
RW bob
R eve mallory
I'm rather pleased that, after a refactoring of the "query rights" code
that was useful by itself anyway, this feature only added about 25 lines
to the core code. Many thanks to Eli for sparking this whole thing off.
If anyone else wants to help me test it, I'd very grateful. Details at
http://github.com/sitaramc/gitolite/blob/pu/doc/admin-defined-commands.mkd
--
Sitaram
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
|
|
Posted
over 15 years
ago
by
Junio C Hamano
The latest feature release Git 1.7.1 is available at the usual
places:
http://www.kernel.org/pub/software/scm/git/
git-1.7.1.tar.{gz,bz2} (source tarball)
git-htmldocs-1.7.1.tar.{gz,bz2} (preformatted docs)
... [More]
git-manpages-1.7.1.tar.{gz,bz2} (preformatted docs)
The RPM binary packages for a few architectures are found in:
RPMS/$arch/git-*-1.7.1-1.fc11.$arch.rpm (RPM)
Git v1.7.1 Release Notes
========================
Updates since v1.7.0
--------------------
* Eric Raymond is the maintainer of updated CIAbot scripts, in contrib/.
* gitk updates.
* Some commands (e.g. svn and http interfaces) that interactively ask
for a password can be told to use an external program given via
GIT_ASKPASS.
* Conflict markers that lead the common ancestor in diff3-style output
now have a label, which hopefully would help third-party tools that
expect one.
* Comes with an updated bash-completion script.
* "git am" learned "--keep-cr" option to handle inputs that are
a mixture of changes to files with and without CRLF line endings.
* "git cvsimport" learned -R option to leave revision mapping between
CVS revisions and resulting git commits.
* "git diff --submodule" notices and describes dirty submodules.
* "git for-each-ref" learned %(symref), %(symref:short) and %(flag)
tokens.
* "git hash-object --stdin-paths" can take "--no-filters" option now.
* "git init" can be told to look at init.templatedir configuration
variable (obviously that has to come from either /etc/gitconfig or
$HOME/.gitconfig).
* "git grep" learned "--no-index" option, to search inside contents that
are not managed by git.
* "git grep" learned --color=auto/always/never.
* "git grep" learned to paint filename and line-number in colors.
* "git log -p --first-parent -m" shows one-parent diff for merge
commits, instead of showing combined diff.
* "git merge-file" learned to use custom conflict marker size and also
to use the "union merge" behaviour.
* "git notes" command has been rewritten in C and learned many commands
and features to help you carry notes forward across rebases and amends.
* "git request-pull" identifies the commit the request is relative to in
a more readable way.
* "git reset" learned "--keep" option that lets you discard commits
near the tip while preserving your local changes in a way similar
to how "git checkout branch" does.
* "git status" notices and describes dirty submodules.
* "git svn" should work better when interacting with repositories
with CRLF line endings.
* "git imap-send" learned to support CRAM-MD5 authentication.
* "gitweb" installation procedure can use "minified" js/css files
better.
* Various documentation updates.
Fixes since v1.7.0
------------------
All of the fixes in v1.7.0.X maintenance series are included in this
release, unless otherwise noted.
* "git add frotz/nitfol" did not complain when the entire frotz/ directory
was ignored.
* "git diff --stat" used "int" to count the size of differences,
which could result in overflowing.
* "git rev-list --pretty=oneline" didn't terminate a record with LF for
commits without any message.
* "git rev-list --abbrev-commit" defaulted to 40-byte abbreviations, unlike
newer tools in the git toolset.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
|
|
Posted
over 15 years
ago
by
Junio C Hamano
Git 1.7.0.6 is available at the usual places:
http://www.kernel.org/pub/software/scm/git/
git-1.7.0.6.tar.{gz,bz2} (source tarball)
git-htmldocs-1.7.0.6.tar.{gz,bz2} (preformatted docs)
git-manpages-1.7.0.6.tar.{gz,bz2} (preformatted
... [More]
docs)
The RPM binary packages for a few architectures are found in:
RPMS/$arch/git-*-1.7.0.6-1.fc11.$arch.rpm (RPM)
----------------------------------------------------------------
Git v1.7.0.6 Release Notes
==========================
Fixes since v1.7.0.5
--------------------
* "git diff --stat" used "int" to count the size of differences,
which could result in overflowing.
* "git rev-list --abbrev-commit" defaulted to 40-byte abbreviations, unlike
newer tools in the git toolset.
And other minor fixes and documentation updates.
----------------------------------------------------------------
Changes since v1.7.0.5 are as follows:
Charles Bailey (1):
Documentation: Describe other situations where -z affects git diff
David Aguilar (1):
Makefile: Remove usage of deprecated Python "has_key" method
Jay Soffian (1):
Documentation/config.txt: default gc.aggressiveWindow is 250, not 10
Jeff King (1):
diff: use large integers for diffstat calculations
Johannes Sixt (1):
MSVC: Fix build by adding missing termios.h dummy
Jonathan Nieder (2):
Document new "already-merged" rule for branch -d
Documentation/Makefile: fix interrupted builds of user-manual.xml
Junio C Hamano (1):
Git 1.7.0.6
Marc Branchaud (1):
Docs: Add -X option to git-merge's synopsis.
Michael J Gruber (3):
rev-list: use default abbrev length when abbrev-commit is in effect
t1010-mktree: Adjust expected result to code and documentation
t7012: Mark missing tests as TODO
SZEDER Gábor (1):
reflog: remove 'show' from 'expire's usage string
Thomas Rast (1):
combined diff: correctly handle truncated file
Will Palmer (1):
documentation: clarify direction of core.autocrlf
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
|