Git: git svn

All local Git features are relevant

git svn assumes that you have only one remote
Tags are added as remote branches
Do local commits as usual Git commits

 

git svn clone <SVN’s URL> -s – assumes all default settings for naming for trunk, branches and tags,
git svn dcommit – makes “push” to SVN remote

if you need to push (dcommit) to SVN and Git simultaneously (actually it is not good idea) – start with SVN
In case git svn there will be no conflict in case changes relate to different files

git svn rebase – pulls data from server(directory should not be in conflicted state with a server)
git svn branch <SVN’s remote branch name> – create SVN’s remote branch, but not switch local context
git svn log – works offline, but shows only your committed commits
git svn blame <filename> – works offline, but shows only your committed commits
git svn info
git svn create-ignore / git svn show-ignore – manipulates with stuff that should be ignored

Advertisements

Git: submodules, configs and hooks

Submodulies – way to handle nested workspaces

Git configuration
Three types:
1. Per whole system (–system key to access it)
2. Per user (–global key to access it), can override system level setting
3. Per repository (no specific key required), can override system and global (user) level setting

git config –list – lists all settings
git config –help – shows page with all possible config options

It is possible to export git repository into some archive.

Git Hooks

It is simple scripts that are invoked by git as result of some action. Each type of hook should be properly named (in accordance to its type) and located at hooks directory.

Client side. Three types: pre-commit (invoked before a commit), e-mail activity (working with patches), other (pre-rebase, post-checkout, post-merge).

Server side. Two types: pre/post-receive (before and after pushes to server – can reject some
user’s push) and update (for some branch updating)

WinDbg automation: Collect all binaries loaded by process

This windbg script collects all binaries (dll and exe) that are currently loaded by process.

This useful operation is required if it is planned to create memory dump and process it on another machine. So you need the all (in worst case) binaries from dumped process.

It is placed here https://github.com/DmitryKrinitsyn/WinDbg

How to use:

  1. Obtain “cb.wds” script. Check it out from git repository or just copy+paste text and save it as “cb.wds” file.
  2. Store “cb.wds” file somewhere it can be easy referred from WinDbg, for example WinDbg’s installation folder (C:\Program Files\Debugging Tools for Windows (x86)\)
  3. Enter WinDbg’s command line “$$>a< cb.wds <local path to store binaries>
  4. Enjoy J

Comments, suggestions and new proposed desired WinDbg automations are highly appreciated.