vi 및 tmux와 프로그래밍 페어링

원격으로 작업하는 것이 실제로 앞으로 작업을 수행하는 유일한 방법입니다. 그러나 사무실에 나란히 앉아 있지 않을 때는 프로그램을 페어링하기가 더 어렵습니다. 이 원격 쌍 프로그래밍을 더 쉽게 만드는 몇 가지 멋진 도구가 있습니다. 그러나 그들은 GUI이고 느리고 나는 속도를 원합니다! 그래서 여기 내가 프로그램을 효과적으로 페어링하기 위해 한 일이 있습니다.

요구 사항


  • tmux
  • vi 또는 터미널 기반 편집기
  • ssh 활성화된 상자

  • 설정



    먼저 컴퓨터에서 신뢰할 수 있는 프로그램과만 페어링하십시오.

    ~/.ssh/authorized_keys에 사용자 추가




    command="tmux attach -t pair -r" public_ssh_key1
    command="tmux attach -t pair -r" public_ssh_key2
    command="tmux attach -t pair -r" public_ssh_key3
    


  • 여기에 tmux에 대한 전체 경로를 제공해야 할 수도 있습니다.

  • ~/.tmux.conf에 tmux 읽기 전용 토글 추가




    bind-key R switch-client -r
    


    창이 ~/.tmux.conf에서 바운스되지 않도록 창 크기 설정




    set-option -g window-size smallest
    


    포트 포워드 포트 22



    우리는 바닐라 ssh를 사용하여 프로그램을 페어링할 것이기 때문에 포트 22를 페어링할 시스템으로 포트 포워딩해야 합니다.

    제 경우에는 duckdns을 사용하여 동적 DNS를 설정했습니다.

    sshd_config



    암호 대신 ssh 키를 사용하도록 sshd에 알려야 합니다./etc/sshd_config에서 다음을 추가하거나 업데이트하십시오.

    PasswordAuthentication no
    ChallengeResponseAuthentication no
    


    tmux 쌍 세션 설정



    이제 모든 것이 준비되었으므로 연결이 pair 레이블이 지정된 tmux 세션에만 연결할 수 있도록 만들었습니다.

    이를 위해서는 누구나 연결할 수 있기 전에 tmux new -t pair가 생성되어야 합니다.

    따라서 호스트 컴퓨터는 tmux new -t pair를 설정하고 클라이언트는 ssh [email protected] 피어가 연결되면 읽기 전용 모드로 연결합니다. 편집 모드를 토글하려면 ctrl+b R . 그리고 다시 읽기 전용 모드로 돌아갑니다.

    이를 설정하고 실행하는 방법에는 여러 가지가 있지만 이것이 기본 아이디어입니다. 나는 꽤 오랫동안 페어 프로그래밍을 해왔고 매우 빠르고 짧은 대기 시간을 가지고 있습니다.
    ctrl+b d 를 사용하여 클라이언트로 세션을 종료합니다. 호스트가 세션을 닫으면 모든 피어의 연결이 끊어집니다.

    마무리 메모


    tmux 3.2 이상을 사용하면 다중 창 편집을 설정할 수 있습니다. 예를 들어 분할 창ctrl+b %을 사용할 수 있으며 피어가 연결되면 호스트는 왼쪽 창에서 작업할 수 있고 피어는 오른쪽 창에서 작업할 수 있습니다.
    ~/.ssh/authorized_keys 파일의 명령을 다음과 같이 수정하기만 하면 됩니다.
    ~/.ssh/authorized_keys
    command="tmux attach -t pair -r -factive-pane" public_ssh_key1
    command="tmux attach -t pair -r -factive-pane" public_ssh_key2
    command="tmux attach -t pair -r -factive-pane" public_ssh_key3
    


    재미를 더하다



    페어 프로그래밍 경험을 향상시키기 위해 내 게시물을 빠르게 읽으십시오.

    좋은 웹페이지 즐겨찾기