MAP | TOP > �H�[�u���ԁv > SCM ���� > Mercurial �̗��p > Emacs ����̗��p | << | >> |
�{�y�[�W�ł́A
Emacs �p�� Mercurial �A�g�t�����g�G���h�Ƃ��Ē����
hg ���[�h (mercurial.el
)�����
mq ���[�h�imq.el
�j �Ɋւ�������܂Ƃ߂Ă݂܂����B
���l: �{�y�[�W�ɋL�ڂ���Ă���R�[�h�͉䗬�ɂ����̂ł��̂ŁA Emacs lisp �E�G�ɂ�����A����ʓI�Ȏ������@�Ɋւ��āA �����m�̕��͌䋳������ƍK���ł��B
�Ȃ��Ahg ���[�h�ł� Emacs 21.x �ȍ~�ŐV�݂��ꂽ�������p����Ă��邽�߁A ���ۂɗ��p������� emacs-major-version �ϐ��l���m�F������ŗ��p���Ă��������B �܂��A�����g�� 21.4 ���ł̓���m�F�����s���Ă��܂���B
Emacs �p�t�����g�G���h�� elisp �t�@�C����:
Contrib
" �z��/usr/share/doc/mercurial-��/contrib
" �z��contrib
" �z���Ɋi�[����Ă��܂��̂ŁA Emacs �N�����ɂ����ǂݍ��ސݒ���s���܂��B
elisp �t�@�C���̊i�[�ꏊ�� LOCATION �ƕ\�L�����ꍇ�̓ǂݍ��ݐݒ�́A �ȉ��̂悤�ɂȂ�܂��B
(push "LOCATION" load-path)
(load-library "mercurial")
(load-library "mq") ;; MQ(Mercurial Queue) �� patch �Ǘ�������ꍇ
�Ȃ��A ���O���b�Z�[�W��t�@�C�����ɓ��{����g�p����ꍇ�ɂ� �u�����R�[�h�v�A ���ɁuEmacs �� hg ���[�h���p�ɂ����闯�ӓ_�v ���Q�Ƃ��Ă��������B
"hg-help-overview
"
("C-c h h
")
�ŕ\�������L�[�}�b�v�ꗗ�ɂ́A
�������@�\�����Ă��Ȃ��@�\������܂��B
0.9.5 �łɓ�������� mercurial.el
�ŗ��p�\�ȋ@�\���ȉ��ɂ܂Ƃ߂܂����B
hg �R�}���h | �Ώ� | �L�[ | lisp �� | C-u �w�� |
---|---|---|---|---|
add | �t�@�C�� | C-c h a | hg-add | �t�@�C�� |
cat | �t�@�C�� | C-x v ~ | hg-version-other-window | ���r�W���� |
commit | ���|�W�g�� | C-c h c | hg-commit-start | --- |
�t�@�C�� | C-x v n | |||
diff | ���|�W�g�� | C-c h = | hg-diff-repo | �t�@�C���A���r�W����(-r ) |
�t�@�C�� | C-x v = | hg-diff | ||
incoming | ���|�W�g�� | C-c h , | hg-incoming | �Ώۃ��|�W�g�� |
log | ���|�W�g�� | C-c h l | hg-log-repo | �t�@�C���A
�Ώ۔͈�(-r )�A
���(-l ) |
�t�@�C�� | C-x v l | hg-log | ||
outgoing | ���|�W�g�� | C-c h . | hg-outgoing | �Ώۃ��|�W�g�� |
pull | ���|�W�g�� | C-c h < | hg-pull | �Ώۃ��|�W�g�� |
push | ���|�W�g�� | C-c h > | hg-push | �Ώۃ��|�W�g�� |
revert | �t�@�C�� | C-x v u | hg-revert-buffer | ---- |
status | ���|�W�g�� | C-c h s | hg-status | �t�@�C�� |
�uC-u �w��v���ɋL�q����Ă���̂́A
Emacs �ł̓��Y�@�\���s�̃L�[���͂ɐ旧����
C-u
����͂����ꍇ�ɁA
�w��\�ƂȂ�lj��p�����[�^�ł��B
�L�[�o�C���h�́A
���|�W�g����ΏۂƂ���@�\��
"C-c h
"�i"h" �� "hg" �R���j
�Ŏn�܂�A
�t�@�C����ΏۂƂ���@�\��
VC ���[�h�Ɠ��l�� "C-x v
" �Ŏn�܂�̂���{�ł��B
�A���A�u�t�@�C���̍\���Ǘ��ւ̒lj��v�Ɋւ��ẮA
���[�U�̊��o�Ƃ��Ă̓t�@�C����ΏۂƂ�������ł����A
"C-c h
" �Ŏn�܂�L�[���͂ƂȂ�܂��B
�����|�W�g������̎�荞�݁ihg-pull
�j
�͓��̓��_�C���N�g�i"<
"�j�A
�����|�W�g���ւ̔��f�ihg-push
�j
�͏o�̓��_�C���N�g�i">
"�j
�ɗR������L�[�o�C���h�ɂȂ��Ă��܂��B
�܂��A
��荞�ݓ��e�̎��O�m�F�ihg-incoming
�j
�� "<
" �L�[�� Shift ���ł���J���}�i",
"�j�A
���f���e�̎��O�m�F�ihg-outgoing
�j
�� ">
" �L�[�� Shift ���ł���s���I�h�i".
"�j
�ɑΉ������L�[�o�C���h�ɂȂ��Ă��܂��B�B
�����̊W�𗝉����Ă����A �L�[�o�C���h���v���o�����������ɂȂ�ł��傤�B
�R�~�b�g���O���͉�ʂł́A �ȉ��̋@�\���g�p�\�ł��B
�@�\ | �L�[ | lisp �� |
---|---|---|
�R�~�b�g�̎��s | C-c C-c | hg-commit-finish |
�R�~�b�g�̒��f | C-c C-k | hg-commit-kill |
���|�W�g���S�̂̕ύX���e�\�� | C-x v = | hg-diff-repo |
�R�~�b�g���O���͉�ʂɂ́A �R�~�b�g�ΏۂƐ��蓾��t�@�C��������܂��B
���ꂽ�t�@�C����
�i"M
" �� "A
"
�Ƃ�������ԃ}�[�N��ł͋@�\���Ȃ��̂Œ��Ӂj
�̏�� SPACE �� ENTER ���������ƂŁA
�R�~�b�g�Ώۉ��̐�ւ����s�����Ƃ��ł��܂��B
�����\���̗L�����A�R�~�b�g�Ώۉ��̗L���ɑ������܂��B
"hg-diff-repo
"�i"C-c h =
"�j
�Ȃ��� "hg-diff
"�i"C-x v =
")
�ɂ�鍷���\����ʂł́A
ENTER ���͂ɂ��Y�������ӏ��ւ̃W�����v
�i"diff-goto-source
"�j�ɑ�\�����
diff ���[�h�̋@�\���g�p�\�ł�
(diff ���[�h�̃o�[�W�����ɂ���Ă� "C-c C-c
"
�ɂ̂݃L�[�o�C���h����Ă���ꍇ������܂�)�B
elisp ���
"hg-forget
"
�@�\����`����Ă��܂����A
���� "hg forget
" ��
"hg revert
" �ɓ�������Ă��܂��̂ŁA
Emacs �o�R�ł̎g�p�ɂ����Ă�
"hg-revert
" ���g�p�����������B
�ȉ��� Mercurial Queue(MQ) �A�g�� Emacs �o�R�ʼn\�ł��B
hg �R�}���h | �L�[ | lisp �� | C-u �w�� |
---|---|---|---|
qdiff | C-c m = | mq-diff | git �݊� |
qnew | C-c m i | mq-new | ---- |
qnext | C-c m n | mq-next | ---- |
qpop | C-c m , | mq-pop | �p�b�`�� |
qpop -a | C-c m < | mq-pop-all | ---- |
qprev | C-c m p | mq-previous | ---- |
qpush | C-c m . | mq-push | �p�b�`�� |
qpush -a | C-c m > | mq-push-all | ---- |
qrefresh | C-c m r | mq-refresh | git �݊� |
qrefresh -m | C-c m e | mq-refresh-edit | ---- |
qseries | C-c m s | mq-edit-series | ---- |
mqrefresh -e | C-c m o | mq-signoff | ---- |
qtop | C-c m t | mq-top | ---- |
Emacs �o�R�� Mercurial �A�g�ɂ����āA �悭������Ƃ��̉����̂���������܂��B
Hg:
" ���\������Ȃ�Mercurial �Ǘ����ɂ���t�@�C�����J�����ہA ���[�h�s�̃��[�h�\�������ɂ͈ȉ��̂悤�ȕ\�������邱�Ƃ��ł��܂��B
filename (Fundamental Hg:rev)
"filename
" �����
"Fundamental
" �����͓ǂݍ��t�@�C���ɉ����āA
�܂� "rev
" �����͍�Ɨ̈�̐e�`�F���W�Z�b�g�ɉ����ĕω����܂����A
�d�v�Ȃ̂� "Hg:
" �����̕\���̗L���ł��B
Mercurial �Ǘ����ɂ���t�@�C�����J�����ۂɁA
���� "Hg:
" ���\������Ȃ��ꍇ�́A
�ȉ��̂悤�Ȗ�肪�l�����܂��B
Emacs �o�R�ȊO����i���g���āA ���Y�t�@�C���� Mercurial �ŊǗ�����Ă��邩�ۂ����m�F���Ă��������B
"hg-mode
" ���̐�����\�������Ă݂Ă��������B
�������\������Ȃ��悤�Ȃ� elisp �t�@�C���̓ǂݍ��݂Ɏ��s���Ă��܂��B
*Messages*
�o�b�t�@�����Q�Ƃ��āA
�������������������B
���߁u�R�}���h�N���Ɏ��s����v���Q�Ƃ��Ă��������B
Emacs ���ȉ��̂悤�ȃ��b�Z�[�W��\������̂́A hg �R�}���h�̋N���Ɏ��s���Ă��邽�߂ł��B
hg �R�}���h��������Ȃ��ꍇ�ł��B
"hg-binary
"
�ϐ��̒l�����҂���l�ɂȂ��Ă��邩���m�F���Ă��������B
���҂���l�ɂȂ��Ă��Ȃ��̂́A
Emacs �N����� Mercurial �̃C���X�g�[�����ύX�A
�Ƃ��������Ƃ������Ǝv���܂��B
�N�����悤�Ƃ��Ă��� hg �R�}���h�� Python �X�N���v�g�ł��邽�߁A Windows �����ɂ����� Emacs �v���Z�X���� hg �R�}���h�����s�ł��Ȃ��ꍇ�ł��B
�u�X�N���v�g�N���p�⏕�v���O�����̃C���X�g�[���v ���Q�Ƃ��Ă��������B
���[�J�����|�W�g���Ƃ̘A�g�ie.g.: add/diff/log/commit ���j�͐���ɋ@�\���Ă������ŁA ssh �o�R�ł̑����|�W�g���Ƃ̘A�g�ie.g.: push/pull ���j�ɂ����ĉ����������Ȃ�ꍇ�́A �ȉ��̂悤�Ȍ������l�����܂��B
���Y�z�X�g�ւ� ssh ����A�N�Z�X���ɂ́A
�z�X�g�����J���̎���
�i"~/.ssh/known_hosts
" �t�@�C���ւ̒lj��j
����̊m�F���K�v�ł��B
�V���ȃz�X�g�ɐڑ�����ꍇ�́A Emacs ���o�R���Ȃ� ssh ���p�œ��Y�z�X�g�ɃA�N�Z�X���邱�ƂŁA �z�X�g�����J���̎�����ς܂��Ă����K�v���L��܂��B
ssh-agent �A�g���@�\���Ă��Ȃ� �i���邢�� ssh-agent ���̂��̂𗘗p���Ă��Ȃ��j�ꍇ�A ssh �̓p�X�t���[�Y�����͂����܂ő҂������܂��B
�܂��� Emacs ���o�R���Ȃ� ssh ���p���A �p�X�t���[�Y���͂�v�����Ȃ����Ƃ��m�F���Ă��������B
����ł� Emacs �o�R�ł̑����|�W�g���A�g���@�\���Ȃ��ꍇ�́A
ssh-agent �ɂ��
"SSH_AUTH_SOCK
" ���ϐ����ݒ肳���O��
Emacs ���N�����ꂽ���߂ɁA
Emacs ���� fork ���ꂽ ssh �� ssh-agent �ƘA�g�ł��Ă��Ȃ����Ƃ������ł��B
�K�X Emacs ���ċN�����Ă��������B
���Y�z�X�g�Ƃ� ssh �A�g���p�X���[�h�F�ōs����ꍇ�A ssh-agent �͋@�\���܂���B
���̏ꍇ�Assh �ɂ�郊���[�g���|�W�g���Ƃ̘A�g�� Emacs �o�R�Ŏ��{���邱�Ƃ͂ł��܂���B
���Ȃ݂ɁA tty ����ۂ̊W��A Emacs ��ʼnғ����Ă���V�F������� ssh ���p���������� �i��\��������j�܂��̂ŁA �uEmacs ���o�R���Ȃ� ssh ���p�v�ɂ����ẮA Emacs �� shell ���[�h���g��Ȃ��悤�ɒ��ӂ��Ă��������B
�u�R�~�b�g���O���͉�ʂŃt�@�C���̑I�����ł��Ȃ��v�A �u�����\����ʂŊY���s�ɃW�����v�ł��Ȃ��v �Ƃ�������肪����ꍇ�A �ȉ��̂悤�Ȍ������l�����܂��B
�@�\��͖��Ȃ��Ă��A �t�H���g���s���iGUI �N�����j���Ă����� �F�ݒ蓙�̖��iCUI �N�����j����A �����\�����ł��Ȃ����߂ɁA �ꌩ����ƃt�@�C���̑I�����ł��Ȃ��悤�Ɍ����邱�Ƃ�����܂��B
���̏ꍇ�̓t�H���g�ݒ�i�ꍇ�ɂ���Ă̓t�H���g�̃C���X�g�[���j ��F�ݒ�̌��������K�v�ł��B
�g���@�\�̒��ɂ́A (Mercurial �A�g�Ɍ��炸) diff ���[�h���Ƒ�������낵���Ȃ����̂�����܂��B
���̏ꍇ�͊e���́u�D�݁v�ɉ����āA �g���@�\�̎�̑I�����K�v�ɂȂ�ł��傤�B
�uEmacs �� hg ���[�h���p�ɂ����闯�ӓ_�v���Q�Ƃ��Ă��������B
MAP | TOP > �H�[�u���ԁv > SCM ���� > Mercurial �̗��p > Emacs ����̗��p | << | >> |