- 깃허브(GitHub)란?
- practice - installation
- git 2024 윈도우 셋업 - YouTube
- The Architecture and History of Git: A Distributed Version Control System
- (비개발자를 위한) GitHub의 역사와 기능 | 요즘IT
- GitHub Engineering
- git-tower.com/learn/git/videos
- Git, GitHub, SSH 이용한 완벽한 작업흐름
- A Visual Git Reference
- Git cheatsheet stash, workspace, index, local repo, upstream repo 간의 이동을 visual로 보여줘서 (여전히 어렵지만) 정말 보기 좋음
- Visualizing Git Concepts with D3
- Git 기본 명령들이 어떻게 동작하는지를 D3와 SVG를 이용한 애니메이션으로 설명
- commit / branch / checkout / reset / revert / merge / rebase / fetch / pull / push / tag
- → 파일을 추가/스테이징 하는 부분은 생략
- 특정 실제 시나리오 몇개
- → 로컬 브랜치를 오리진으로 리스토어 하기
- → 프라이빗 로컬 브랜치를 오리진 최신본으로 업데이트 : git fetch & rebase
- → 로컬 브랜치 삭제하기
- Explain Git with D3
- git - 간편 안내서
- Git / GitHub 안내서
- Git 분산버전 관리시스템
- Introduction to Git - Core Concepts - YouTube
- Introduction to Git - Branching and Merging - YouTube
- Introduction to Git - Remotes - YouTube
- Git과 Github | Hohyeon Moon
- Comprehensive Guide to GitHub for Data Scientists | by Vatsal | Towards Data Science
- The Universe of Discourse : Things I wish everyone knew about Git (Part I)
- Git Large File Storage
- Git in six hundred words
- Git from the inside out
- Git from the inside out
- 12가지 명령어로 배우는 Git
- 나를 구원해줄 그 분은 바로 git. 그리고 github
- Deploying branches to GitHub.com
- databranches: using git as a database
- A statistician's initial experiences of Git/GitHub
- Git Cheat Sheets
- Git cheat sheet
- git-cheat-sheet.pdf
- Git Ready: A Git Cheatsheet of Commands You Might Need Daily | by Yakko Majuri | The Startup | Aug, 2020 | Medium
- Unpacking Git packfiles
- Scripts to Rule Them All
- Git as a Document Format
- 깃허브 페이지에 커스텀 도메인 연결하기
- Sublime Text2와 Gist로 깔끔하게 code snippet을 사용해 봅시다
- Git가지고 놀기(1) - Sublime과 함께 사용하기. - 완두블로그
- Facebook Gist Viewer
- Git from the bottom up
- Source Control Solutions
- How short can Git abbreviate?
- 디자이너를위한Git #1/2
- 04 Yong Seong Song -애저 웹앱을 사용하여 GIT을 활용한 게임 리소스 관리하기
- Git 더하기 GitHub
- GitHub에서 커밋에 서명하기
- 윈도우버전 Git설치하기 (Git for Windows)
- 자바 기반의 GIT 관리 서버 (Windows GIT 서버 구축)
- Git 100% 활용하기: 협업을 위한 브랜치 전략, 팁과 노하우
- 🐙 Github에서 협업하는 방법
- Git 내부 구조를 알아보자
- Git for Computer Scientists Quick introduction to git internals
- CLI 환경에서 소스 코드 버전 관리하기 - 임창수 블로그
- Git from the Bottom Up
- gitlet.js - how Git works under the covers
- GitHub로 프로젝트 관리하기
- GitHub Repo 에 Travis CI 추가하기
- About Travis CI
- Travis CI flaw exposed secrets of thousands of open source projects | Ars Technica
- Travis CI가 9월 3일부터 9월 10일까지 Trvis CI를 사용하는 GitHub 저장소에서 Pull Request 빌드에 모든 시크릿 환경변수(서명 키, 접근 인증서, API 토큰 등 포함)를 주입하는 보안 사고
- 보통 저장소에서 CI 빌드를 할 때 필요한 시크릿을 설정해서 사용하지만 어떤 악의적인 코드가 포함될지 모르는 Pull Request를 빌드할 때는 이러한 시크릿을 추가하지 않기 때문에 시크릿이 Pull Request에 노출되었다는 것은 외부에 유출되었을 가능성이 있다는 의미
- Travis CI에서 시크릿을 쓰고 있다면 키 갱신 필요
- Travis Continuous deployment for your open source library
- Travis에서 조금 더 괜찮은 방법으로 .env 다루기 | 강준영 기술 블로그
- 알아두면 좋은 GIT 꿀팁 3개
- Top 10 Free GitHub Alternatives for Private Repositories
- 오픈소스 일기: GIT 그리고 저장소 다루기
- GitHub말고 프라이빗 Git 서버 만들기 #yona - YouTube
- 비번 없이 서버, github 이용하기
- 케빈 TV S02E08 - Git 활용 및 GitHub와 GitLab 같이 쓰기 (2016-10-09)
- zerocho.com/category/Git
- 디자이너를 위한 Git 사용법
- git을 sql로 확인하기~ 막일을 줄이기 위한 유용한 팁 3
- Circle CI에서 python 3.6.0을 사용하는 법
- GitHub 실습 교육
- Git “Back to the Future”
- 스타트업에서 개발 문화 만들기 (아직 진행중..)
- Git repository for designers as you’ve never seen: Abstract (+ Sketch)
- Gerrit을 이용한 코드 리뷰 시스템
- Gerrit을 이용한 코드 리뷰 시스템 - 코드 리뷰와 Gerrit
- Gerrit과 Git
- 코드 리뷰 시스템 설치
- #gerrit #codereview 사용 소감
- 나의 Gerrit FAQ
- 인증 환경 설정
- 사용자 권한 관리(1)
- 사용자 환경 설정
- 코드 리뷰 방법(1)
- 코드 리뷰 방법(2)
- CI 연동, SVN 마이그레이션
- gerrit query로 리뷰 데이터 추출하기
- Gerrit Code Review 도입하기 | Hyperconnect Tech Blog
- How To Install Gerrit on an Ec2 Ubuntu | by S3CloudHub | Jun, 2022 | Medium
- GitHub으로 협업하기: 클론부터 코드 리뷰까지 | ~/xo.dev
- GitHub Branch Lock and Automated code reviewer | GitHub Branch Policy | CODEOWNER - YouTube
- practice - github api to get PR review time's 90 percentile
- GitHub Actions를 이용한 코드 리뷰 문화 개선기 code review
- 주기적으로 git 저장소에서 코드 가져오는 쉘
- 깃의 Detached HEAD
- Git 커밋, 브랜치, HEAD의 관계는?
- Git and GitHub Integration comes to Atom
- GitHub을 이용한 셀프 브랜딩
- #gdc13 #review Working Together: Solutions for Collaborative Asset Creation
- 드디어 보이는 Git의 미래
- Using BFG Repo Cleaner tool to remove sensitive files from your git repo
- 회사에서 깃(Git)을 쓰고 싶어요
- Habits maketh engineer — Git(hub) 습관이 엔지니어를 만든다 — Git(hub) 편
- Github 에코시스템 - Git을 둘러싼 유용한 서비스들
- hub(허브)로 명령행에서 Github(깃허브) 풀리퀘스트 보내기
- aws, github, 2FA 활성화나 수정 방법
- github : 유용한 기능들
- 깃허브(GitHub)로 취업하기
- 2 phase commit
- 깃허브 및 관련 서비스 (2018-06-08) 시드니 개발자 아저씨 케빈의 개발자 방송 Live
- Github를 이용해서 Project Management 하는 방법 및 전체적인 프로세스에 대해서 정리
- github 하나로 1인 개발 워크플로우 완성하기
- A brief history of code search at GitHub | The GitHub Blog
- Towards Natural Language Semantic Code Search
- Introducing an all-new code search and code browsing experience | GitHub Changelog
- GitHub Universe에서 GitHub의 새 코드 검색과 코드 브라우징 기능 공개
- 코드 검색은 빠른 속도로 기존보다 훨씬 다양한 조건으로 검색 가능
- 코드 브라우징은 저장소에서 코드를 볼 때 마치 에디터처럼 트리 뷰로 파일을 탐색 가능
- 파일의 심볼도 분석, 바로 각 심볼로 이동하
- Git 뽀개기(자료 모음집) (비)개발자들을 위한 Git과 Github 기초 자료 모음집입니다
- Version Control with Git: Git Cheatsheets for Quick Reference
- Git으로 버전제어
- Git을 사용한 버젼 관리
- Git을 이용한 더 나은 버전관리
- How not to be afraid of Git anymore
- 깃(Git)은 뭐가 다른가?
- 깃(Git) 용어 정리
- 깃(Git)과 함께 개발하기
- 깃(Git) 유용한 팁
- 깃(Git) 필수 명령어
- 가장 쉬운 Git 강좌 - (상) 혼자작업편
- 가장 쉬운 Git 강좌 - (하) Github편
- 주요 깃 서비스 비교
- What not to save into a Git repository
- Repository 언어 분석 설정 변경하기 :: 시행착오를 줄이는 방법
- How to use GitHub as a PyPi server
- The Biggest Misconception About Git
- Picturing Git: Conceptions and Misconceptions - BiTE Interactive
- The Google Doc of Coding: Git & GitHub
- How to be more productive on GitHub
- Mac OS X 터미널에서 Git 패스워드 기억하기
- Mind your programming language .gitattributes
- The Essential Git Handbook
- 깃허브 패키지 레지스트리 베타 발표 언어 별 패키지 매니저 지원 및 깃헙 권한으로 접근 제어 등
- 깃허브 컨테이너 레지스트리(GitHub Container Registry) 베타 오픈 및 사용법 | 44BITS
- GitHub Container Registry 사용하기 :: Outsider's Dev Story
- GitHub Actions에서 GitHub Container Registry에 이미지 푸시하기 :: Outsider's Dev Story
- Git 계정 여러 개 동시 사용하기
- Bitbucket 쉽게 시작하는 방법 & 사용법
- 기존 프로젝트를 Bitbucket과 SourceTree로 올려보자
- Github에서 Bitbucket Import
- Github Two Factor 인증 설정하기 (feat. Authenticator)
- Password authentication is temporarily disabled as part of a brownout. Please use a personal access token instead. | by gon Kim | elecle | Jun, 2021 | Medium
- Update git remote URLs with the access token - KC - Medium
- Password authentication was removed에 대처하기
- Complete list of github markdown emoji markup
- Github 패스워드 교체시 로컬 비밀번호도 변경하기
- GitHub에서 GPG 서명하기 (for OS X)
- GPG(GNU PG)를 이용해 git 커밋에 서명하는 방법 | 44BITS
- git 다중 사용자 신원 설정
- 여러 깃헙 계정을 SSH 방식으로 사용하는 방법 — 시행착오를 줄이는 방법
- GitHub 여러 계정을 한 컴터에서 사용하기 - 1ilsang
- git multiple user 설정 방법
- How to Work with GitHub and Multiple Accounts
- 여러 깃헙 계정을 SSH 방식으로 사용하는 방법 :: 시행착오를 줄이는 방법
- Setting Up Git Identities
- 10 Extraordinary GitHub Repos for All Developers
- GitHub Protips: Tips, tricks, hacks, and secrets from Lee Reilly
- GitHub Protips: Tips, tricks, hacks, and secrets from Alyson La
- 5 Git Practices for Effective Work
- Why You Should Write Small Git Commits
- Github 프로필에 나의 Daliy 코딩 시간을 적용해보자!
- 4 New GitHub Products That Will Change How You Code Codespaces, Discussions, Code Scanning and Secret Scanning, Private Instances
- GitHub Repos That Should Be Starred by Every Web Developer
- 우리 팀 GitHub에 지금 당장 연결해야 할 서비스 4가지
- Resolving issue with Git not able to differentiate between letter cases (uppercase & lowercase) with folder/directory git에서 대소문자 구분
- Github Issue로 오픈소스 기여하기 | Univdev
- Introducing GitHub Super Linter: one linter to rule them all - The GitHub Blog
- How to Use GitHub Super Linter in Your Projects
- GitHub 아이디/패스워드 입력 없이 사용하는 방법
- rest-api-description: An OpenAPI description for GitHub's REST API
- Learn about REST API and GraphQL through GitHub APIs and do magic - YouTube
- How a one line change decreased our clone times by 99% | by Pinterest Engineering | Pinterest Engineering Blog | Oct, 2020 | Medium
- The Easiest Way To Remove Checked In Credentials From A Git Repo | by Tanmay Deshpande | Medium
- Git push 결과물이 Github 잔디에 반영이 안될 때 해결하기 | by Ryan Kim | Nov, 2020 | Medium
- Everything You Always Wanted To Know About GitHub (But Were Afraid To Ask)
- Commits are snapshots, not diffs - The GitHub Blog
- Git is my buddy: Effective Git as a solo developer
- branch는 한 가지 유용한 일만 해야 함
- 모든 commit은 독립적 - commit마다 독자적인 테스트 포함, 모든 테스트 통과해야 함
- draft commit도 ok(하지만 build는 되야 함)
- commit을 완전히 버려도 좋다
- 실수 방어 도구 - git commit --amend, git commit --fixup [hash], git rebase --interactive main, git stash, git blame
- 깃허브(GitHub)로 취업하기
- Git Workflow Diagram
- Include diagrams in your Markdown files with Mermaid | The GitHub Blog
- 텍스트 기반으로 다이어그램을 그릴 수 있는 Mermaid를 GitHub에서 지원
- 이슈나 Pull Request 등 GitHub의 마크다운을 작성할 수 있는 곳에서 간단히 다이어그램 포함 가능
- Mermaid, topoJSON, geoJSON, and ASCII STL Diagrams Are Now Supported in Markdown and as Files | GitHub Changelog
- 최근 GitHub에 Mermaid 지원이 추가되어 마크다운에서 Mermaid 다이어그램 작성 가능
- 추가로 geojon이나 topojson으로 위치 범위를 표시하거나 stl로 3D 렌더링 표시 가능
- What’s wrong with Git? A conceptual design analysis | the morning paper
- Git as a NoSql database
- Scaling monorepo maintenance | The GitHub Blog
- '폴리리포주의자'가 모노리포를 반대하는 3가지 이유 - ITWorld Korea
- 모노레포에서 Github Actions 현명하게 사용하기
- GitHub Packages Container registry is generally available | The GitHub Blog
- Docker Hub처럼 GitHub에 컨테이너 이미지를 배포하고 받아올 수 있음
- GitHub, 블로그에 방문자 카운터를 달아보자 | SILENTSOFT
- Highlights from Git 2.33 | The GitHub Blog
- github.dev - GitHub코드를 VS Code로 1초만에 둘러보기 | GeekNews
- 코드베이스 시각화 하기 | GeekNews
- git은 폴더경로가 변경된 것을 어떻게 알 수 있을까? - Kwoncharles Blog
- git에서 파일 경로를 변경, 수정까지 한 경우 git이 어떻게 커밋히스토리를 유지하는지 추적한 글
- 추가/삭제된 파일의 hash로 후보를 찾고 이 파일을 규칙에 따라 chunk로 나는 뒤에 50% 이상 동일하면 변경된 것으로 인식
- 그래서 파일 마지막에 개행 문자가 없는 경우에 rename의 추적 과정이 왜 달라지는지도 설명
- Improving Git protocol security on GitHub | The GitHub Blog
- Protect Your Code with GitHub Security Features • Rob Bos • GOTO 2023 - YouTube
- GitHub과 소프트웨어 보안 - YouTube
- GitHub 보안 개선
- Sergey Bronnikov - Git as a storage
- 많은 사람들이 모르는 Github Organization Public
- Github: 은근히 많이 쓰는 깃헙약어
- 2 stories about Migrate containers to GitHub Container Registry (GHCR) — GitHub Packages curated by Bryant Jimin Son - Medium
- Using ChatOps to help Actions on-call engineers | The GitHub Blog
- GitHub에서는 터미널 대신 슬랙에서 명령어를 입력해서 자동화하는 "Hubot"이라는 ChatOps 활용
- Hubot은 로그 수집 도구인 Kusto에 질의를 할 수 있으므로 문제가 생겼을 때 Hubot을 이용해서 바로 조회, 처음 온 사람도 비상대기할 때 장애 상황에 대처할 플레이 북 문서를 Hubot을 통해서 조회, 플레이 북을 자동화해서 문제 검색
- 개발팀 퇴근시간을 앞당겨줄 git, github 팁 | 요즘IT 자동화, 이슈 템플릿
- How to automate everything with GitHub with GitHub App - YouTube
- Git 2.35의 주요 변경점 | GeekNews
- My tips for maintaining dotfiles in source control | Opensource.com
- Performance at GitHub: deferring stats with rack.after_reply | The GitHub Blog
- GitHub에서
rack.after_reply
를 이용해서 30~50ms 정도 응답 시간을 줄일 개선을 정리한 글 - GitHub의 성능 분석을 하면서 요청을 처리할 때 매트릭을 보내기 위해 요청당 최대 65ms를 사용한다는 것을 발견
- 배치로 모아서 보내거나
Rack::Events
등의 방법을 고려해 봤지만, 문제를 해결할 수 있어 보이지 않음 - 그러다가 Puma의
rack.after_reply
가 응답을 완료한 후 실행하는 기능이라는 것을 발견 - GitHub에서는 Puma 대신 Unicorn을 쓰고 있었기 때문에
rack.after_reply
구현해서 Unicorn에 기여- 이를 통해 사용자에게 응답을 보낸 후에 매트릭을 전송하게 하여 P50에서는 30ms, P99에서는 50ms 이상 감소
- 배치로 모아서 보내거나
- GitHub에서
- Math on GitHub: The Good, the Bad and the Ugly | techematics
- Math support in Markdown | The GitHub Blog
- GitHub 마크다운에서
$
,$$
기호를 이용해서 TeX나 LaTeX 스타일의 수식 작성 가능
- GitHub 마크다운에서
- Improved REST API documentation | The GitHub Blog
- GitHub의 REST API 문서 개선
- OpenAPI 스키마에서 자동으로 문서가 생성되도록 바꾼 후 지속해서 개선하고 있는데 파라미터와 응답을 쉽게 볼 수 있도록 3컬럼 레이아웃 사용
- 예제도 cURL 뿐 아니라 JS와 GitHub CLI 같이 제공
- Specify theme context for images in Markdown (Beta) | GitHub Changelog
- GitHub 마크다운에서
prefers-color-scheme
를 이용해서<picture>
HTML로 라이트/다크 테마에 따라 다른 이미지 출력 가능
- GitHub 마크다운에서
- GitHub에서 사용자 테마에 따라 다른 이미지 보여주기 :: Outsider's Dev Story theme
- git tips and tricks - Part 1: the fundamentals
- GitHub Sponsors
- Automate GitHub API Calls With Ruby, Keyboard Maestro, and 1Password CLI - DEV Community 👩💻👨💻
- 10년차도 실수하는 Git의 화살표 방향. 프로그래밍에 발을 들이고 조금 지나면 프로그래밍 언어만큼이나 뇌를… | by 송요창 | Sep, 2022 | Medium
- 만화로 보는 GIT 탄생 이야기 | GeekNews
- Experiment: The hidden costs of waiting on slow build times | The GitHub Blog
- 개발자에게 더 강력한 하드웨어를 물으면 항상 그렇다고 대답
- GitHub에서 실제 더 강력한 하드웨어를 사용했을 때 비용이 어느 정도인지 알기 위한 실험
- Linux 커널을 컴파일하는 프로젝트를 대상으로 2 코어에서 64코어로 빌드해서 얼마나 많은 시간이 절약되었는지 점검
- 이 시간이 비즈니스 비용이 얼마나 되는지 검색
- 미국 개발자의 평균 비용으로 시간당 75달러를 기준으로 빌드 중에 다른 일은 하지 않는다고 계산
- 코어가 늘어나면 빌드 시간이 많이 감소하므로 개발자 비용도 많이 감소
- 두 번째 실험에서는 빌드 동안 기다리는 대신 다른 작업을 한다고 가정
- 결국 컨텍스트 스위칭이 일어나는데 컨텍스트 스위칭에 1시간이 걸린다고 가정하면 빌드 시간이 큰 의미 없어지지만
- 15분, 30분이라고 생각하면 빌드시간을 줄이는 데 드는 비용이 개발자 비용보다 훨씬 적기 때문에 강력한 하드웨어를 쓰는 게 타당
- 개발자에게 더 강력한 하드웨어를 물으면 항상 그렇다고 대답
- Building GitHub with Ruby and Rails | The GitHub Blog
- Ruby on Rails로 만들어진 GitHub.com은 이제 200만 줄의 코드로 구성되어 1,000명이 협업
- 매주 월요일 GitHub Actions 워크플로우가 Rails 프로젝트 메인 브랜치의 최신 커밋으로 Rails 버전을 업데이트해서 모든 빌드를 새 버전으로
- 전에는 새 버전 업데이트에 여러 달이 걸렸지만 이제 1주일 이내로 완료
- 이 이점으로 Rails에 패치를 보내고 기다리거나 할 필요없이 Rails 프로젝트에 바로 패치를 전송 가능(merge되면 다음 주에 바로 적용)
- 보안에도 좋으며
- 빅뱅 마이그레이션이 사라짐
- 비슷한 업그레이드가 Ruby에도 적용하고 있어서 Ruby 3.2때는 한 달 만에 업그레이드했지만 3.2.1을 당일날 업그레이드
- git과 ssh/https의 관계 - AnyDoc
- Push protection is generally available, and free for all public repositories | The GitHub Blog
- 커밋에 시크릿이 포함된 경우 푸시 자체를 거절하는 Push protection 기능이 공개 저장소에서 무료로 이용 가능
- Keep all your packages up to date with Dependabot | The GitHub Blog
- Dependabot on GitHub Actions and self-hosted runners is now generally available - The GitHub Blog
- GitHub에서 의존성 업데이트를 자동으로 지원하는 Depandabot이 이제 GitHub Actions 워크플로우로도 실행 가능
- 이 시간은 GitHub Actions 시간에 포함되지 않아 기존과 똑같이 무료
- Depandabot을 GitHub Actions로 실행할 수 있게 되면서 self-hosted 러너에서 실행하거나 프라이빗 네트워크에 접근할 수 있게 하는 등의 유연성 향상
- GitHub에서 의존성 업데이트를 자동으로 지원하는 Depandabot이 이제 GitHub Actions 워크플로우로도 실행 가능
- dependabot-core: 🤖 Dependabot's core logic for creating update PR's.
- dependabot-core is now open source with an MIT license - The GitHub Blog
- Dependabot을 GitHub Actions에서 동작 지원과 동시에
- 20개 이상 언어와 패키지 매니저 의존성 업데이트를 지원하는 dependabot-core를 오픈소스(MIT)로 공개
- dependabot-core is now open source with an MIT license - The GitHub Blog
- GitHub Repository Rules are now generally available - The GitHub Blog
- GitHub의 조직 차원에서 저장소에 적용할 규칙을 관리할 수 있는 Repository Rules :: Outsider's Dev Story
- GitHub 저장소의 메타데이터를 관리할 수 있는 Custom Properties :: Outsider's Dev Story
- Metrics for issues, pull requests, and discussions - The GitHub Blog
- 저장소의 이슈, 풀 리퀘스트, 디스커션에서 첫 반응에 걸리는 시간, 종료될 때까지의 시간, 대답하는 데 걸리는 시간 등 통계를 볼 수 있는 Issue Metrics Action GitHub Actions를 GitHub에서 만들어서 제공
- issue-metrics: Gather metrics on issues/prs/discussions such as time to first response, count of issues opened, closed, etc.
- GitHub repository templates 사용 후기
- Inside
.git
- Introducing Artifact Attestations–now in public beta - The GitHub Blog
- GitHub에서 빌드한 아티팩트를 증명해서 공급자에서 위변조가 일어났는지 검사할 수 있는 기능을 베타로 공개
- 이 기능은 Sigstore로 동작하고 GitHub CLI로 서명하고 이를 검증하게 할 수 있으며 아티팩트를 SBOM과 연결 가능
- Github - Suggestion :: iOYES
- GitHub에서 삭제되거나 비공개 Repo 데이터에 누구나 액세스할 수 있음 | GeekNews
- GitHub이 실제로 승리한 이유 | GeekNews
- GitHub Next | GitHub Spark
- 어플리케이션 생성 패러다임을 바꿀 Github Spark
- Microsoft가 누구나 프로그래밍이나 배포 지식이 없어도, 미니 웹 앱인 스파크를 만들 수 있는 AI 기반 도구 GitHub Spark 발표
- Claude Sonnet 3.5, GPT-4o, o1-preview, o1-mini.를 선택, 자연어 지시를 통해 요구 사항과 선호도에 맞춰 데스크톱/모바일 기기에 미니 웹 앱을 개발 가능
- 사용자 아이디어를 쉽게 설명하고 다듬을 수 있는 NL 기반 편집기
- 스파크 호스팅하고 데이터 저장, 테마, LLM에 대한 액세스 제공하는 관리되는 런타임 환경
- 어디서나 스파크를 관리하고 시작할 수 있는 PWA 지원 대시보드로 구성
- 아직 초기 단계이며, 협업 방식, 편집기, 런타임 환경 확장 업데이트를 통하여 어플리케이션의 생성 패러다임을 바꿔나갈 것으로 기대
- 어플리케이션 생성 패러다임을 바꿀 Github Spark
- GitHub Actions 소개
- GitHub Actions에서 원하는 워크플로우 만들기
- GitHub Actions 워크플로우 사용하기 :: Outsider's Dev Story
- Run your GitHub Actions workflow on a schedule
- Accelerating new GitHub Actions workflows https://github.com/features/actions
- Write Your GitHub Actions Workflow for Build Windows Application
- Create Simple GitHub Actions Workflow for Java Application |GitHub Actions Crash Course | DevOpsHint - YouTube
- GitHub Actions workflow를 수동으로 trigger하기(feat. inquirer.js) | 카카오엔터테인먼트 FE 기술블로그
- GitHub Action을 사용해 새로 올라온 전월세 방 목록 받아보기
- GithubAction+React+AWS S3
- GitHub Actions로 간단히 CI 서버 대신하기
- .NET Core 콘솔 앱으로 커스텀 GitHub Action 만들기
- GitHub Actions으로 날씨알리미 만들기
- 깃헙 액션으로 ChatOps 구현하기 microsoft teams 연결
- github.com - action
- 30분만에 만드는 깃헙 액션 - 라이브 코딩
- GitHub Actions (CI/CD Flow)
- GitHub Actions Runner
- Github Actions를 이용한 개발블로그 글을 슬랙으로 알림받기
- Github 프로필에 나의 Daliy 코딩 시간을 적용해보자!
- GitHub Actions, 어디까지 써봤니?
- 의존성 캐시로 Github Actions 속도 높이기
- Doing Stupid Stuff with GitHub Actions | DevOps Directive
- Automate releases and more with the new Sentry Release GitHub Action - The GitHub Blog
- GitHub Action을 이용한 알림 자동화 | 딥백수 slack
- GitHub Actions를 활용한 ECS 배포자동화. Deployment Automation (Django + Docker… | by Woosik Kim | Feb, 2021 | Medium
- github action과 heroku를 이용한 빌드/배포 자동화 - YouTube
- GitHub Actions로 npm publish 자동화하기 :: Outsider's Dev Story
- Continuous Delivery: GitHub Actions (Developer Workflow Automation with GitHub Actions CICD) - YouTube
- GitHub Actions에서 Chrome WebDriver 테스트 오류 해결법 (pytest)
- GitHub 액션과 ARM 템플릿 검사도구를 이용한 Bicep 코드 품질 테스트 | Aliencube
- Docker Github Actions - Docker Blog
- GitHub Actions Tutorial - Basic Concepts and CI/CD Pipeline with Docker - YouTube
- 2020년식으로 블로그 빌드 고치기 · /usr/lib/libsora.so
- ci skip 커밋 메시지로 GitHub Actions 실행 취소하기 :: Outsider's Dev Story
- GitHub Actions와 Fastlane을 사용해서 React Native 앱 배포하기 - GitHub Actions와 Fastlane을 사용해서 React Native로 개발한 앱을 자동으로 배포해 봅시다
- 리서치 코드의 지속적 통합(CI) 튜토리얼(상편). By 송호연 | by Riiid Techblog | Feb, 2021 | Medium
- GitHub으로 시작하는 CI/CD #github #actions - YouTube
- GitHub Actions의 pull_request_target과 workflow_run 이벤트 :: Outsider's Dev Story
- 내 깃허브가 털렸다
- GitHub Actions로 수행하는 CI/CD DevOps, 리포트 만들기, 메시지 보내기 등의 놀라운 작업들 - YouTube
- 깃허브 코리아 밋업: 깃허브 액션 데모 발표
- GitHub Korea Meetup 그룹 7월 이벤트를 통해서 한 "깃허브 액션으로 수행하는 CI/CD DevOps, 리포트 만들기, 메시지 보내기 등등의 놀라운 작업들" 발표 • "깃허브 헬로 월드" 시작하기 • Microsoft Teams 메시지 보내기 • Twilio 로 텍스트 문자 메시지 보내기 • Infra CI/CD 로 Azure Web App 자동 생산하기 • App Dev CI/CD 로 NodeJS 앱을 JEST 테스트/테스트 카버리지/깃허브 페키지 빌드/깃허브 아티팩트 사용한후 Azure 웹앱으로 배포하 • 그리고 Terraform 으로 AWS 에 2개의 가상 머신에 로드발렌스 되어 있고 오토 스케일 기능 갖추어진 리소스 생산하기
- CI/CD Github Actions으로 내 포트폴리오에 CI/CD를 적용하기
- GitHub Actions 워크플로우의 승인 기능 사용하기 :: Outsider's Dev Story
- Publish to NPM using GitHub Actions | Publishing Node.js packages to NPM using GitHub Actions - YouTube
- GitHub 프로필을 iMessage 대화 메시지로 꾸며보기 | by Jin Hyung Park | Aug, 2021 | Medium
- GitHub에서 자신의 프로필 페이지를 원하는 대로 꾸밀 수 있는 프로필 저장소 기능을 이용해 프로필 페이지에 iMessage 형식으로 대화하듯 인사말과 날씨등을 보여주는 기능을 구현하는 과정 설명
- 프로필에서 스크립트 등을 원하는 대로 사용할 수는 없으므로 액션을 이용해서 SVG로 생성해서 보여주는 과정을 거치게 되는데 해당 기능을 원래 구현했던 개발자의 소스를 참고해서 이 기능이 어떻게 구현되는지 설명
- Github action를 이용한 커뮤니티 행사 관리/운영 하기! | JaeSeoKim's Blog
- Automating a software company with GitHub Actions - PostHog
- Github Actions 로컬 개발 환경 구성하기 - Burt.K
- GitHub Actions: Ephemeral self-hosted runners & new webhooks for auto-scaling | GitHub Changelog
- Next.js AWS S3를 통한 정적 웹 사이트 배포 및 GitHub Actions를 통한 CI/CD
- Build & Push Docker Image to AWS ECR using GitHub Actions | Build Docker Image Using GitHub Actions - YouTube
- 10 GitHub Actions resources to bookmark from the basics to CI/CD | The GitHub Blog
- GitHub Actions: reusable workflows is generally available | The GitHub Blog
- 여러 저장소에 걸쳐서 반복적으로 사용하는 워크플로우를 복사 붙이기로 만드는 대신 공동으로 사용할 곳을 만들어 두고 저장소의 워크플로우 YAML을 바로 지정해서 사용할 수 있는 방법 추가
- 워크플로우의
uses: my-org/actions/.github/workflows/node.js.yml@1
처럼 지정해서 재사용
- 깃헙 액션, 이런 것도 할 수 있다고? 꿀팁 대방출! | 애저한발짝 - YouTube
- 카카오웹툰은 GitHub Actions를 어떻게 사용하고 있을까? | 카카오엔터테인먼트 FE 기술블로그
- 카카오웹툰 GitHub Actions 활용 팁 설명
- 간단한 Actions 설명부터 시작, Slack에 알림을 보내기 위해 별도로 만든 Actions 파일을 연결해서 사용
- 글로벌 배포를 위해 브랜치 이름에 관례를 만들어서 어느 리전과 환경에 배포할지를 판단 가능
- 추가로 정기적으로 실행되도록 설정한 자동배포 워크플로우도 설명
- How we ship GitHub Mobile every week | The GitHub Blog
- How to build a CI/CD pipeline with GitHub Actions in four simple steps | The GitHub Blog
- Part – IX: Push to ACR using GitHub Actions (Continuous Deployment) – Hello World!
- Github Action 빌드 결과 Telegram Bot으로 보내기
- GitHub Actions by Example
- How to start using reusable workflows with GitHub Actions | The GitHub Blog
- GitHub Actions 워크플로우를 복사/붙이기 할 필요 없이
workflow_call
로 다른 저장소의 워크플로우를 호출하는 방법 설명 - 액션에서
workflow_call
를 지정하고 다른 저장소에서uses
로 호출할 수 있는데 저장소에서 접근 권한을 열어주어야 함 - 대신 private 저장소의 워크플로우는 참조할 수 없고 하나 이상을 참조도 불가능
- GitHub Actions 워크플로우를 복사/붙이기 할 필요 없이
- GitHub Actions의 workflow_call로 워크플로우 재사용하기 :: Outsider's Dev Story
- 다른 저장소의 GitHub Actions 워크플로우를 호출할 수 있는 repository_dispatch :: Outsider's Dev Story
- Introduction to GitHub Actions | Workflow of GitHub Actions | GitHub Actions Tutorial for Beginners - YouTube
- GitHub Actions에서 워크플로우 실행의 이름을 바꿀 수 있는 run-name :: Outsider's Dev Story
- GitHub Actions의 Composite 액션 작성하기 :: Outsider's Dev Story
- GitHub Actions에서 도커 캐시를 적용해 이미지 빌드하기 | 카카오엔터테인먼트 FE 기술블로그
- release 브랜치 merge시 Tag 생성, 브랜치 삭제하기 (feat. Gihtub Action)
- 카카오엔터프라이즈가 GitHub Actions를 사용하는 이유 – tech.kakao.com
- Visualize your Actions with GitHub Actions Job Summary - YouTube
- GitHub Actions의 잡 요약 기능 :: Outsider's Dev Story
- GitHub Action 2년간 사용기
- Node Project CI 하기 (with Github Action)
- Connecting to a private network from GitHub-hosted Actions runners | The GitHub Blog
- GitHub Actions를 사용할 때 보통은 깃헙이 운영하는 GitHub-hosted 러너 사용
- 회사의 프라이빗 네트워크에 연결이 필요한 경우 보통 self-hosted 러너를 네트워크 안에 띄워서 실행 가능
- 하지만 self-hosted 러너를 관리할 리소스가 없는 경우 GitHub-hosted 러너에서 프라이빗 네트워크에 연결할 방법 설명
- OpenID Connect(OICD) 토큰을 이용해서 API 게이트웨이에 인증해서 접속하거나 WireGuard로 오버레이 네트워크를 설정하거나 TailScale같은 사용 솔루션으로 오버레이 네트워크 설정해서 연결
- Automate Deploy Jupyter Notebooks with Github Actions | MLOps | Productionize Jupyter Notebooks - YouTube
- MLOps with Hugging Face Spaces, Gradio and Github Actions - YouTube Github Action기반으로 Hugging Face에 CD하는 MLOps tutorial
- Auto Label in Issue · Actions · GitHub Marketplace
- How to build Python Project using GitHub Actions | GitHub Actions CI/CD Pipeline for Python Project - YouTube
- The Database CI/CD Best Practice with GitHub
- Using Different Shell in GitHub Actions | Running Inline Shell and Checkout code with GitHub Actions - YouTube
- CircleCI에서 GitHub Actions로 이전하며 배포 속도 개선하기 | by Seungwook Seo | 당근마켓 팀블로그 | Sep, 2022 | Medium
- How to use actions/checkout in GitHub Actions | GitHub - jobs : what is : use actions/checkout - YouTube
- Automatically create GitHub repository, enable branch protection with Terraform and GitHub Actions - YouTube
- Making CI workflow faster with Github Actions - Blog | luminousmen
- Github Actions 과 함께 Continuous Delivery 구축하기 | by Yuwon Oh | 29CM TEAM | 29CM TEAM
- 하루에도 10번 배포하는 Flutter 앱 CI/CD 구축하기 | by 아테나스랩 | 아테나스랩 팀블로그 | Oct, 2022 | Medium
- Introducing GitHub Actions Importer | The GitHub Blog
- Azure DevOps, Jenkins, CircleCI 등 다른 CI의 파이프라인을 분석해서 임포트할 수 있게 해주는 GitHub Actions Importer가 GitHub Universe에서 공개
- GitHub Actions 배포 동시성 설정 - 현구막 기술 블로그
- if(kakao)dev2022 GitHub Actions Runner 빌드 실전 적용기
- GitHub Actions workflow notifications in Slack and Microsoft Teams | GitHub Changelog
- Slack과 Microsoft Teams의 GitHub 앱을 통해 GitHub Actions의 워크플로우의 알림 수신 가능
/github subscribe owner/repo workflows
명령어로 알림 구독/github subscribe owner/repo workflows:{name:"your workflow name" event:"workflow event" branch:"branch name" actor:"actor name"}
같은 식으로 워크플로를 필터링해서 구독 가능
- GitHub Actions에서 조직 수준의 필수 워크플로우를 관리할 수 있는 Required Workflows :: Outsider's Dev Story
- GitHub Actions - Support for configuration variables in workflows | GitHub Changelog
- GitHub Actions에서 기존에는 시크릿만 저장해서 관리할 수 있었지만
- 민감하지 않은 데이터를 관리할 수 있도록 configuration variables가 추가
- Actions 설정에서 추가한 뒤 워크플로우에서
${{ vars.REPOSITORY_VAR }}
형태로 참조 가능
- GitHub Actions에서 기존에는 시크릿만 저장해서 관리할 수 있었지만
- Github Workflow에서 Python 패키지 설치 시간 단축하기
- GitHub Actions에서 output 변수의 문법 변경 :: Outsider's Dev Story
- Github Actions의 느려터진 성능을 (회사)돈 주고 사보자 — Github-hosted Larger runners 사용기 | by 정백경 | Jan, 2023 | Medium
- 워크서버개발팀의 GitHub Actions 적용기
- GitHub Actions - JavaScript action 만들기 | 카카오엔터테인먼트 FE 기술블로그
- Announcing GitHub Actions Deployment Protection Rules, now in public beta | The GitHub Blog
- GitHub Actions의 배포 기능을 사용할 때 Deployment protection rules 추가
- 이를 통해 Datadog, Honeycomb, New Relic, NodeSource, Sentry, ServiceNow 등 GitHub과 파트너쉽을 맺은 회사가 이미 앱을 제공
- 이 앱을 통해 배포 시 안전한 배포만 나가도록 추가적인 보호 정책을 적용 가능
- 직접 Deployment protection rules을 만들어서 공유도 가능
- GitHub Actions의 스킵된 Required 잡 실행하기 :: Outsider's Dev Story
- GitHub Actions - Actions Runner Controller Public Beta | GitHub Changelog
- GitHub Actions의 셀프 호스티드 러너를 Kubernetes에서 운영할 수 있도록 도와주는 Kubernetes 오퍼레이터인 Actions Runner Controller(ARC)가 퍼블릭 베타로 공개
- Writing a GitHub Action with Scala.js | TonioGela's
- GitHub Actions를 활용한 개발 효율화. Intro | by Oh jeongseok | 네이버 플레이스 개발 블로그 | Jun, 2023 | Medium
- GitHub Actions으로 배포 자동화해 보기(a.k.a CI/CD) - 1편 - 골든래빗
- GitHub Actions으로 배포 자동화해 보기(a.k.a CI/CD) - 2화 - 골든래빗
- How GitHub Actions 10x my productivity - YouTube
- github actions를 이용하여 PR 발생 시 테스트코드 구동
- Github Actions Reusable로 프론트엔드 배포 플로우 통합하기 | by Yeonbeen Park | 원티드랩 기술 블로그 | Sep, 2023 | Medium
- GitHub Actions로 개선하는 코드 리뷰 문화
- 20.깃허브 액션을 이용한 CI 시스템 구축 – 제니퍼소프트
- Arm64 on GitHub Actions: Powering faster, more efficient build systems - The GitHub Blog
- GitHub Actions에 Arm 기반 Linux, Windows 러너 공개
- Arm 러너는 x86보다 37% 저렴한 가격으로 제공
- 현재는 GitHub Team과 Enterprise 플랜에서 제공
- 연말에는 오픈소스 프로젝트에도 제공 예정
- Accessibility alt text bot · Actions · GitHub Marketplace · GitHub
- Github Actions 배포 시간 줄여볼까? I 배포 시간 기존 27분에서 12분, 최대 8분까지 단축시킨 방법을 공유합니다. | 레몬베이스 팀블로그
- Run Database in GitHub Actions, Persisting Data to S3, and Access it Publicly | WeSQL
- act: Run your GitHub Actions locally 🚀
- actions-runner-controller: Kubernetes controller for GitHub Actions self-hosted runnners
- GitHub Skills
- release-drafter: Drafts your next release notes as pull requests are merged into master
- Github Release Drafter - 깃허브 프로젝트 릴리즈 자동화 - DSlog
- Automate your Changelogs with Release Drafter by Oleg Nenashev - YouTube
- VidiGo Automate your Changelogs with Release Drafter by O
- release drafter를 통해 github 릴리즈와 changelog.md 파일을 중심으로 변경 로그를 일관되게 관리 가능
- 릴리즈 드래프터로 변경 로그 자동화하기(작성자: Oleg Nenashev) | 완벽한 영상요약, 릴리스에이아이 | Lilys AI
- Release Drafter는 GitHub 액션
- Enterprise나 github.com을 사용하는 모든 곳의 GitHub 워크플로에 구성 가능, 간단한 설정으로 릴리즈 노트 수정 가능
- Release Drafter 설정을 위해 대상을 정의하고, 릴리즈 노트를 수정할 수 있도록 Release Drafter에 일부 권한 부여 필요
- GitHub 토큰을 사용하여 리포지토리에 연결
- 이렇게 하면 changelog의 유지 및 업데이트 자동화
- Release Drafter는 GitHub 액션
- VidiGo Automate your Changelogs with Release Drafter by O
- shot-scraper-template - 웹 페이지 스크린샷을 저장하는 GitHub Re | GeekNews
- README.md 10초만에 깔끔하게 만드는 법
- Building a self-updating profile README for GitHub
- How to Create an Impressive GitHub Profile README - SitePoint
- Unlocking GitHub's Hidden Feature in 3 Minutes - YouTube
- Github Profile Readme로 프로필 꾸미기 · 어쩐지 오늘은
- github profile 예쁘게 꾸미기
- README Badge를 커스텀 해보자!
- Github Profile에 사용하는 Badge API 만들기 (Kaggle Badge)
- How to Build the Best Github Profile for Your Job Search - Qvault
- Private Profiles | GitHub Changelog
- 토이 프로젝트 깃허브 프로필에 최신 포스트 자동 업데이트하기
- Github 프로필 꾸미기
- fiddly: Create beautiful and simple HTML pages from your Readme.md files
- github-readme-stats: Dynamically generated stats for your github readmes
- 더북(TheBook): Git 교과서
- 확장본#3 - 깃옵스(GitOps)를 여행하려는 입문자를 위한 안내서.pdf
- Git 좀 잘 써보자
- git-scm.com/book/ko/v1
- Git TextBook | 깃 개념 잡기
- Learning Git: A Hands-On & Visual Guide • Anna Skoulikari & Helen Scott • GOTO 2024 - YouTube
- GitHub Codespaces
- Codespaces가 유료임에도 GitHub의 Team이나 Enterprise Cloud 플랜을 사용하는 사람이자 조직만 Codespaces 사용 가능
- Codespaces를 사용하려면 org 설정에서 활성화를 해주어야 하고 사용한 만큼 비용을 지불하는 구조
- GitHub Codespaces 살펴보기 :: Outsider's Dev Story
- GitHub Codespaces의 개발 환경 설정하기 :: Outsider's Dev Story
- GitHub’s Engineering Team has moved to Codespaces | The GitHub Blog
- GitHub 엔지니어링 팀이 GitHub.com 개발 환경을 GitHub Codespaces로 변경. Codespaces는 VS Code를 이용해서 클라우드 개발환경을 제공하는 GitHub 기능
- 이전에는 로컬 macOS 환경에서 GitHub.com 개발, 개발환경 설정에 스크립트 이용, 열심히 관리했지만 자주 깨지고 유지하기가 어려움
- 다른 컴퓨팅 환경처럼 개발환경도 쉽게 띄우고 교체할 수 있는 환경으로 넘어가기 위해 Codespaces 도입, 로컬에서 45분 걸리던 개발환경 설정을 5분으로
- GitHub.com 코드 베이스가 너무 커서 shallow 클론을 진행하고 나이틀리 빌드로 devcontainer를 미리 만들어 놓고 사용하면서 5분까지 줄였으나 여기서 더 개선하기 위해 사전빌드를 진행해서 10초까지 줄임
- 이제 새 직원이 와도 10초 만에 개발환경을 띄울 수 있게 되었고 VM의 리소스 한 줄만 바꾸면 모든 개발자가 더 좋은 컴퓨팅 환경에서 개발 가능
- 공개된 GitHub Codespaces 살펴보기 :: Outsider's Dev Story
- Github Codespaces가 Backend.AI를 만났을 때 | Lablup Blog
- GitHub Codespace 환경 개인화하기 :: Outsider's Dev Story
- Github Codespaces와 Devcontainer 톺아보기 | 애저한발짝 - YouTube
- Codespaces for multi-repository and monorepo scenarios | The GitHub Blog
- GitHub의 클라우드 개발환경이 코드스페이스에서 마이크로서비스로 인해 개발할 때 다른 저장소가 필요한 상황이 많아서
- 이를 지원하기 위해
devcontainer.json
에서customizations.codespaces.repositories
키로 다른 저장소 권한 설정 가능해 저장소를 클론하기 위해 개인 엑세스 키를 설정 필요 제거 - 또한 모노레포 프로젝트에서는 팀마다 다른 코드스페이스 환경이 필요하기 때문에 여러
devcontainer.json
를 지정할 수 있게 되어.devcontainer/${DIR}/devcontainer.json
형식 지정 가능
- GitHub Codespaces의 Development Containers 살펴보기 :: Outsider's Dev Story
- JetBrains IDE로 GitHub Codespaces 사용하기 :: Outsider's Dev Story
- One Click Into GitHub Codespaces | GitHub Changelog
- 프로젝트의 Codespace를 GitHub 외부에서 바로 열 수 있는 Deep 링크 기능이 추가되어 링크나 버튼을 외부에 공유 가능
- 추가로 Codespace를 실행할 때 추천 시크릿을 보여주는 기능이 추가되었고 Dev Container에 이름을 지정 가능
-
Oh shit, git! 실수했을 때 case별 대처법
-
Now that you’re not afraid of GIT anymore, here’s how to leverage what you know
- merge, remote, push, pull, reset
-
GitHub Privacy 101: How to remove personal emails from your public repos
-
Learn basics of Version Control & Git Commands in less than 10 minutes
-
Git 커맨드라인 환경에서 GUI 부럽지 않게 사용할 수 있는 몇가지 팁 fzf + peco
-
커밋 히스토리를 이쁘게 단장하자 merge, squash, rebase
-
- HashiCorp의 Mitchell Hashimoto가 Git에서 Merge, Rebase, Squash에 관한 질문을 많이 받아서 자기 생각을 정리한 글
- 셋 중의 하나가 정답이라고 말하는 건 틀렸다고 생각하고 각 전략이 필요한 상황이 있다고 생각
- Merge와 Merge 커밋이 히스토리를 가장 잘 표현한다고 생각하기에 Merge를 선호하며 모든 커밋이 빌드할 수 있으면서 커밋이 많을수록 bisect가 좋아지기에 하나의 커밋에 변경이 많은 것은 싫어하고 한 커밋은 +50/-50 정도가 가장 좋다고 생각
- 하지만 이렇게 하려면 모두가 이 규칙을 잘 따라야 하는데 보통 쉽지 않기에 OSS에서 PR에 WIP 커밋이 많지만 대부분 작은 차이
- PR이 하나의 목표만 있다면 Squash를 사용하는데 이때도 Git/GitHub의 기본 스쿼시 메시지가 아니라 다시 작성하는 편
- 변경 사항이 많은 WIP가 많은 경우 rebase를 통해 적당히 스쿼시하고 순서도 조정해서 관리
- 50개 이상의 커밋을 대규모로 인터랙티브 리베이스를 할 때 GUI가 편하다는 걸 깨달아서 Tower를 사용
- 번역 merge vs rebase vs squash
-
Git in the office checkout rebase fetch merge
-
비슷하지만 꼭 구별해야하는 Git 커맨드 (git fetch vs git pull, git merge vs git rebase)
-
Improve your Git skill by learning Git Commands that everyone should really know
-
Git 초보를 위한 깃 명령어 & 용어 정리 (+커밋 히스토리 브랜치 그래프 보는법, Git Log 옵션 종료, 단축 명령어 Alias 설정, 터미널 커맨드라인): 네이버블로그
-
15 Git Commands To Master Before Your Very First Project | by AnBento | Level Up Coding
-
7 Git tricks that changed my life | Opensource.com
$ git config --global help.autocorrect 1 # 오타 자동 교정 $ git rev-list --count master # 커밋 세기 $ git gc --prune=now --aggressive # Repo 최적화 $ git ls-files --others --exclude-standard -z | xargs -0 tar rvf ~/backup-untracked.zip # 추적제외 파일 백업하기 $ cat .git/description # .git 폴더 이해하기 $ git show main:README.md # 다른 브랜치 파일 보기 $ git rev-list –all | xargs git grep -F ‘font-size: 52 px;’ # Git 검색하기
-
How to Undo Mistakes With Git Using the Command Line - YouTube
-
4 tips for context switching in Git | Opensource.com stash + branch, WIP commit + branch, new repository clone, worktree, rev-parse
-
Code Review from the Command Line – Jake Zimmerman
hub pr checkout
,git stat
,git heatmap
,git depgraph
,git review
,git reviewone
-
About basic Git commands. Git is an open-source distributed… | by Jony Choi | Jan, 2022 | Medium
-
5 Git Commands pro should know #youtubeshort #gitcommand #Shorts #command #Git #viral - YouTube
-
20 Git Commands you (probably) didn't know about 🧙♂️ - DEV Community 👩💻👨💻
-
실무에서 사용했던 git 정리 remote branch rebase cherry-pick reset 등
-
앗! 모르고 깃헙(GitHub)에 올렸어요!. 깃 내부 작동 방식과 함께 살펴보는 revert, reset 명령어… | by weekwith.me | 당근마켓 테크 블로그 | Apr, 2023 | Medium reset revert gitguardian
-
- Git에서 설정하면 좋을 설정 정리한 글
- pull 할 때 어떻게 동작할지, 컨플릭트시 보여주는 방식, autosquash 설정, push할 브랜치 설정등
- 많은 사람들이 기본적으로 설정해서 사용하는 옵션들이 어떤 기능을 제공하는지 정리
- 인기 있는 Git 설정 옵션들 | GeekNews
-
add
- Undo 'git add' before commit
git reset <files>
- git add -p Is a Gamechanger in File Management
- Undo 'git add' before commit
-
amend
-
Rewriting history git commit --amend git rebase git rebase -i git reflog
$ git commit -m "Some message..." # Change something $ git add [file] $ git commit --amend -m "Some message..." # fix up the most recent commit
-
git add [the_left_out_file]; git commit --amend --no-edit
How to add a file to the last commit in git?
-
-
bisect
-
blame
git-blame-someone-else: Blame someone else for your bad code -
branch
-
Git Flow Is A Bad Idea - YouTube git flow 반대. CI/CD를 위해 master의 매 commit이 production이 되어야 하고, 그게 delivery의 시작점이라고 주장
-
매일 배포하는 팀이 되는 여정(1) — 브랜치 전략 개선하기 | by Jeremy | 당근마켓 팀블로그 | Apr, 2023 | Medium
- 잦은 배포를 위해서 브랜치 전략을 공부하고 배포 과정을 개선해 나간 경험
- Git Flow 전략을 쓰면서 정기 배포일을 정해놓고 배포하고 있었는데 한 번에 너무 많은 변경 사항이 같이 나가다 보니 추적도 어려웠고 배포도 점점 부담되어서 Git Flow의 단점이 보이기 시작해서 브랜치 전략을 공부
- main 브랜치를 mainline으로 사용하는 GitHub Flow와 Trunk-Based 브랜치 전략을 공부
- GitHub flow를 선택하고 배포 과정이 훨씬 나아졌다고 함
-
Trunk-based development, Feature Flag, micro PR 와 함께 주 2회 배포하기 | 29CM TEAM
-
create new branch
git branch [new branch] ... git remote add [new branch] remotes/origin/[new branch] git push origin [new branch]
-
git push origin --delete [branch name]
Delete Remote Branch -
git branch -d [branch name]
How to delete a Git branch both locally and remotely? -
git checkout -b [branch name] remotes/[repository name]/[branch name]
How to check out a remote Git branch? -
filter-branch
GitHub 잔디밭 꾸미기 포기 · 감자도스 -
How to delete all merged git branches with one terminal command
-
git-branchless: High-velocity, monorepo-scale workflow for Git
-
checkout
git checkout [branch name] -- [file name]
checkout specific files from another branchgit checkout HEAD -- path/to/file.txt
Find and restore a deleted file in a Git repository- 상황
- old/path/file.txt를
git mv file.txt new/path
를 사용해 new/path/file.txt로 변경 - 다시 old/path/file.txt로 변경하고 싶어서
git reset new/path/file.txt
를 실행했다가 new/path에서는 사라지고 old/path에도 복원되지 않은 경우 사용
- old/path/file.txt를
- 상황
-
cherry
- Unlocking Git: Using Cherry for Commit Insights
git cherry
명령어로 두 브랜치간의 차이가 있는 커밋을 빠르게 살펴볼 방법 소개
- Unlocking Git: Using Cherry for Commit Insights
-
cherry-pick
-
clean
git clean -fd
git이 추적하지 않는 untracked files 한꺼번에 삭제하기
-
clone
git clone https://[username]:'[password]'@github.com/[username]/[repository]
enclose password in quotes if password has special charactersgit clone [email protected]:[id]/[repository].git
- Git 저장소 복제 (부제: 쌍둥이 저장소 만들기)
- What's the best practice to “git clone” into an existing folder?
- 5분 따라하기 기존 폴더를 git으로 관리하는 최선의 방법
- Get up to speed with partial clone and shallow clone - The GitHub Blog
-
commit
-
$ git commit -m "Something terribly misguided" (1) $ git reset [--soft|--hard] HEAD~ (2) << edit files as necessary >> (3) $ git add ... (4) $ git commit -c ORIG_HEAD (5)
-
Use a Git commit message template to write better commit messages
-
git commit accepts several message flags (-m) to allow multiline commits
-
Commit Often, Perfect Later, Publish Once—Git Best Practices
-
Why should I write good commit messages? | by Ankit Muchhala | The Startup | Medium
-
Git Commit Message Style Guide - 개인/팀을 위한 커밋 메시지 스타일 가이드 | Second Memory
-
How to Change the Author and Committer Name and Email of Multiple Commits in Git | Saturn Cloud Blog
-
config
-
basics
$ git config --global url."https://github.com/".insteadOf git://github.com/ $ git config --global http.proxy http://... $ git config --global https.proxy http://... $ git config -l ... # do some necessary work $ git config --global --unset url.https://github.com/.insteadof $ git config --global --unset http.proxy $ git config --global --unset https.proxy
-
한 컴퓨터에서 두 개의 서로 다른 github 계정을 사용하고 싶은 경우 Specify private SSH-key to use when executing shell command with or without Ruby?
$ ssh-keygen -t rsa -C "[email protected]" # create one more ssh key Generating public/private rsa key pair. Enter file in which to save the key (/Users/myaccount/.ssh/id_rsa): id_rsa_another Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in id_rsa_another. ... $ mv id_rsa_another* ~/.ssh/ $ ls ~/.ssh/ id_rsa id_rsa.pub id_rsa_another id_rsa_another.pub known_hosts $ vi ~/.ssh/config # Default GitHub Host github.com HostName github.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa # GitHub Host another.github.com HostName github.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_another $ ssh-add ~/.ssh/id_rsa_another Identity added: /Users/myaccount/.ssh/id_rsa_another (/Users/myaccount/.ssh/id_rsa_another) $ ssh-add ~/.ssh/id_rsa Identity added: /Users/myaccount/.ssh/id_rsa (/Users/myaccount/.ssh/id_rsa) $ ssh-add -l 2048 SHA256:... /Users/myaccount/.ssh/id_rsa_another (RSA) 4096 SHA256:... /Users/myaccount/.ssh/id_rsa (RSA) $ ssh -T [email protected] Hi User! You've successfully authenticated, but GitHub does not provide shell access. $ ssh -T [email protected] Hi User! You've successfully authenticated, but GitHub does not provide shell access. $ git clone [email protected]:<github_another_id>/<repository>.git
-
git config credential.helper store
How to save username and password in git -
ssh: connect to host github.com port 22: Connection timed out
-
-
deps
-
diff
git --no-pager diff
for long line over 80 columnsgit diff ... --name-only
git diff <commit1> <commit2> <filename>
How to diff the same file between two different commits on the same branch?git diff <branch1>..<branch2> -- <filename>
branch간 특정 file 비교gitub.com/<id>/<repo>/compare/<branch1>...<branch2>
browser에서 비교- Git가지고 놀기(2) - Git Diff - 완두블로그
- Better git diffs with FZF. git diff can be a little overwhelming… | by Rafael Mendiola | Medium
- Better Git diff output for Ruby, Python, Elixir, Go and more | tekin.co.uk .gitattributes
- Git diff Command – How to Compare Changes in Your Code
- delta: A syntax-highlighting pager for git, diff, and grep output
-
filter-branch
-
gitignore
- .gitignore가 작동하지 않을때 대처법
- gitignore.io - 자신의 프로젝트에 꼭 맞는 .gitignore 파일을 만드세요
- Git 전역 ignore 파일
- Ignoring Files and Directories in Git (.gitignore)
- Automatic .gitignore generation | Pega Devlog
- 이미 git으로 관리하고 있는 파일을 .gitignore에 추가했을 때, 변경해도 더 이상 추적하지 않도록 하는 방법 | Joohee Kim's Blog
- 내 작은 .gitconfig | DevelopersIO
- gitignore.io - 자신의 프로젝트에 꼭 맞는 .gitignore 파일을 만드세요
- gitignore - A collection of useful .gitignore templates
-
grep
-
hook
- husky prevents bad commit or push using Git hooks
- Husky 사용할 때 주의! - 코드쓰는사람
- husky로 git hooking하기 : 네이버 블로그
- husky와 lint-staged를 이용한 레포지토리 관리 (포매팅/린팅) 자동화 - AnyDoc
- 훅으로 Git에 훅 들어가기
- SwiftLint와 Git Hook을 이용해서 코딩 스타일 관리하기
- GitHub 커밋 메세지에 JIRA 이슈번호 자동으로 넣어주기
- Git hook for large files: because who wants to have their 100TB data file committed to Git?
- pre-commit hooks you must know. Boost your productivity and code… | by Martin Thoma | Sep, 2020 | Towards Data Science
- Heroku-style deployments with Docker and git tags
- Integrate
wemake-python-styleguide
in pre-commit git hook | by Jonathonbao | Medium - pre-commit 도구로 Git Hook 사용하기 | Engineering Blog by Dale Seo
- Why & How to Use Git Hooks in ReactJS Application ? - YouTube
- 자주 쓰이는 Git 훅들 - AnyDoc
- Git Hooks를 사용한 커밋 메시지 Prefix 자동화
-
inject
amend commits other than HEAD -
log
-
git log --all -- [deleted path/to/file]
How to locate a deleted file in the commit history? -
git log --oneline --graph --all --branches --decorate
-
git log -g --grep=STRING
-
git -L :<funcname>:<file>
-
git log -p <filename>
-
lg
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit" git config --global alias.lga "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --all"
git lg
,git lg -p
변경사항 포함,git lga
branch까지 함께
-
When it comes to git history, less is more • Stephen Brennan
-
-
ls-files
- Make your monorepo feel small with Git’s sparse index | The GitHub Blog
- 모노레포처럼 아주 큰 Git 저장소의 경우 성능을 개선하기 위해 sparse-checkout을 사용 가능
- 이때 파일의 일부만 사용하게 되지만 Git 인덱스는 여전히 워킹디렉토리의 파일 정보를 다 가지고 있음
- 2백만 개의 파일이 있는 모노레포의 경우 Git 인덱스만 해도 180MB나 될 정도로 성능에 영향
- 이런 경우 Git 인덱스도 필요한 파일만 사용하도록 --sparse-index를 사용 가능
- 이렇게 사용하면 아주 큰 모노레포에서도 작은 저장소인 것처럼 Git 명령어를 빠르게 사용 가능
- 이 명령어를 추가하게 된 배경과 성능 비교를 설명
- 모노레포처럼 아주 큰 Git 저장소의 경우 성능을 개선하기 위해 sparse-checkout을 사용 가능
- Make your monorepo feel small with Git’s sparse index | The GitHub Blog
-
merge
- How to "Merge" Specific Files from Another Branch
git merge --no-commit --no-ff <name>
Is there a git-merge --dry-run option?- situation; PR을 만든 후 새로운 commit들이 main에 올라와서 update 필요
- mistake; PR에서 update를 그냥 했더니 내가 만들었던 PR의 commit들을 덮어쓰는 문제 발생
- solution
-
PR을 만든 후 main의 새로운 commit들을 cherry-pick으로 하나씩 내가 만든 branch에 적용
-
git merge main --no-ff --no-commit
으로 문제없는지 확인, 다음과 같이 출력On branch <PR branch> Your branch is up to date with 'origin/<PR branch>'. All conflicts fixed but you are still merging. (use "git commit" to conclude merge)
-
git commit
-
git push
-
이후 github의 PR에서 보면 File changed에 내가 만든 변경 사항들만 있음을 확인할 수 있음
- 단 Commits에는 내가 만든 commit 이외에도 cherry-pick한 commit들도 있으므로 더 많음
-
- 정리 PR Pull Request > PR을 만든 후 main에 새로운 commit들이 올라온 경우
- situation; PR을 만든 후 새로운 commit들이 main에 올라와서 update 필요
git merge <name> -X theirs
Force Git to always choose the newer version during a merge?- e.g. branch merge할 때 의 내용으로 덮어쓰고 싶은 경우
git checkout HEAD -- <filename>
Hard reset of a single file- e.g. merge 중에 conflict가 발생했는데, binary file이라 vi라 수정은 못하고, 이전 버전을 사용하길 원할 경우
- practice
--ours / --theirs
- practice - merge conflict 해결 변경 내역 유실 및 삭제 복구
- practice - merge conflict 해결 같은 filename으로 서로 다른 branch에서 작업한 경우(간단)
- Git에서 conflict(충돌) 해결하기
- In a git merge, how do you just replace your version with the version git says there is a conflict with?
- git merge conflict을 어떻게 방지할까 – xacdo.net branch protection rule
- conflict(충돌) 어디까지 알고있니?
- git conflict - 알면 기능, 모르면 사고 - YouTube
- git merge conflict가 발생하면 어떻게 하고 계시나요?
- Better Git Conflicts with zdiff3
- Git에서 컨플릭트가 발생했을 때 두 브랜치의 차이점이 파일에 표시
- 설정에서
diff3
를 사용하면 원래 어떻게 되었는지 3개의 차이를 모두 보여주어서 수정하기가 훨씬 용이 - Git 2.35에서 추가된
zdiff3
를 사용하면 공통 조상에서 충돌된 부분을 더 정확하게 표시
- 설정에서
- Git에서 컨플릭트가 발생했을 때 두 브랜치의 차이점이 파일에 표시
- GitHub의 Merge, Squash and Merge, Rebase and Merge 정확히 이해하기
- Git: merging specific files from another branch
- merge a remote branch locally
- Git Merge Strategy Options and Examples
- merge - How to replace master branch in Git, entirely, from another branch? - Stack Overflow master에 merge한 commit들이 문제가 있는 경우 다시 다른 branch를 master에 덮어쓸 때 유용
- Git Merge 전략 - 나호석 · Present
- Scaling merge-ort across GitHub - The GitHub Blog
- GitHub은 뒤에서 수많은 머지와 리베이스를 실행하고 있기 때문에 머지/리베이스 성능 개선 중요
- 머지/리베이스의 전제 조건은 빨라야 하고, 정확해야 하며, 보안을 위해 워킹 디렉터리 없애서 체크아웃할 수 없게 해야 한다는 점
- 전에는 Git 기본 전략보다 빠른
libgit2
를 사용했는데 종종 정확성에서 차이가 나서 로컬에서는 병합되는데 왜 GitHub UI에서는 안 되는지에 관한 문의 존재 - Git에는 2년 전 새로운 머지 전략인
merge-ort
가 도입되었고 기존 전략인merge-recursive
보다 빠르고 워킹 디렉터리도 필요치 않은 데다가 이젠 Git의 기본 머지 전략 - 이를 도입하기 위해 머지에 먼저 점진적으로 GitHub에 도입했고 P50에서 10배, P99에서 5배가 빨라졌으며 리베이스에 도입할 때는
git-replay
명령어를 활용했는데 512시간이 걸릴 리베이스가merge-ort
에서는 33시간 소요
- Git의 새로운 기본 Merge 전략 ort :: Outsider's Dev Story resolve recursive ort
- Mergiraf - Git용 구문 인식 Merge 처리기 | GeekNews
-
restore
-
show
-
status
git status --porcelain
git에 추가되지 않은 file 출력
-
switch
-
undo
-
pandoc; git으로 word file을 diff할 때 그냥 비교하면 안 되는데 이걸 markdown으로 바꿔 비교할 수 있도록 하는 명령어
-
pull request
- GitHub로 남의 프로젝트에 감놓고 배놓기
- practice - pull request
- Checking Out GitHub Pull Requests Locally
- Bitbucket Pull Requests
- Pull Request를 이용한 개발 흐름을 적용해 보고 나서
- GitHub의 Pull Request를 로컬로 가져오기
- 오픈소스 git 프로젝트에 Pull Request 보내기
- github 에 pull request 하기
- GitHub Pull Request가 자동으로 close되는 경우는?
- 오픈 소스 컨트리뷰션을 위한 GitHub Fork & Pull Request
- gitflow 사용 및 pull request 하는 방법
- 헤이딜러 개발팀 모두가 행복한 개발/PR관리 방법 7가지
- 원티드랩 프론트엔드 팀의 Pull Request 양식 및 자동화 | by Chaeryn Park | 원티드 제품 팀블로그 | Mar, 2021 | Medium
- Github에서 PR 생성 시 Reviewer 자동으로 할당하기 (feat. CODEOWNERS)
- GitHub - Auto Assign 사용하기 :: iOYES
- 리멤버에서 Pull Request 편리하게 사용하는 법 - DRAMA&COMPANY CODEOWNERS 등
- 번역 Art of Clean Pull Requests - 클린한 Git PR의 기술
- Pull Request Review GitHub App 을 만들어보며.. | by Maeng Sol | Aug, 2021 | Medium
- Github Pull Request시 Jest & Docker Test Code 수행하기
- 리멤버에서 Pull Request 편리하게 사용하는 법 - DRAMA&COMPANY
- 슬기로운 코드 리뷰 생활 with GitHub Pull Request | by Rachel Kwak (곽소현) | 직방 기술 블로그 | Medium
- Git pull 전략 (default, --ff-only, --rebase)
- Github 기능 미리 써보기 (Code Review시 디렉토리 미리보기)
- GitHub merge queue is generally available | The GitHub Blog
- GitHub의 merge queue 기능 GA
- Pull Request를 쓸 때 다른 PR이 merge되면 다시 rebase 등의 액션을 해야 하므로
- 활발하게 다수가 작업하는 저장소에서는 Pull Request 쓰면서 먼저 merge하려고 하거나 비효율이 발생
- merge queue는 이런 문제를 해결하기 위한 기능
- 베이스 브랜치와 최근 변경 사항과 merge queue에 있는 다른 변경 사항까지 고려한 임시 브랜치를 만들어서 CI에서 확인하며 순서대로 바로 merge되도록 가능
- merge에 실패하면 queue에서 빠져서 알림
- 사용하려면 설정에서 merge queue 활성화 필요
- What is a merge queue, and does your team need one? | Graphite
- GitHub 등에서 Stacked Changes를 지원하는 Graphite에서 얼마 전에 GitHub에 추가된 merge queue 기능이 왜 필요한지 정리한 글
- Pull Request로 작업하는 경우 각 PR의 CI는 통과했는데 머지 후에는 실패하는 경우 존재
- 이 main이 깨지는 문제를 막기 위해 브랜치 보호 규칙으로 항상 최신 상태를 유지하도록 하면 모든 PR을 매번 리베이스해야 하는 리베이스 지옥이 펼쳐지게 되는데 이러한 문제를 머지큐로 해결 가능
- 머지큐를 이용하면 PR 간 머지될 순서를 결정하고 각 PR을 검사하면서 머지할 수 있게 되므로 단순하게는 머지 속도가 느려질 수 있지만 변경 사항이 많거나 CI가 길다면 머지 큐로 속도를 더 높일 수 있음
- Jeremy's Blog | Stacked Diffs(Stacked PR)
- Pull Request로 협업할 때 협업을 잘 하기 위해 여러 방법이 있는데 그중에서 Stacked PR을 설명
- 코드 리뷰를 하는 동안 다음 작업을 하기 위해서 PR이 서로 이어지기 때문에 Stacked라는 표현 사용
- Stacked PR이 필요한 이유와 함께 GitHub에서 실제로 Stacked PR을 만들려면 어떻게 하는지까지 보여주어서 이해하기가 좋음
- 이러한 과정을 쉽게 도와주는 도구와 문제점도 같이 설명
- GitHub - Issue & PR Template :: iOYES
- PR 생성될때, 자동으로 이미지 용량 최적화 하기. 기존에는 TinyPNG로 직접 이미지용량을 줄여서 앱/웹에… | by Ted Park | PRND | Jul, 2024 | Medium
git -C <dir> pull
지정된 디렉토리에서 Git 명령어 실행하기 - 신현석(Hyeonseok Shin)git pull --rebase
-
push
-
rebase
-
rebase 후 remote branch update가 잘 안 되는 경우 (아직 정확히는 모르겠음)
git rebase -i <some commit> git add <some conflict file> git rebase --continue git push origin HEAD:refs/remotes/origin/<branch name...> [-f] git push origin HEAD:refs/heads/<branch name...> [-f]
-
Git Force vs Force with Lease. And When to Use Them | by Mohammad-Ali A'RÂBI | Aug, 2021 | ITNEXT
--force
보다 더 안전한--force-with-lease
를 쓰라는 글--force
는 리모트 브랜치를 망가뜨릴 수도 있으므로 다른 브랜치에 리베이스하거나, 이전 커밋 메시지를 바꾸거나 합치거나 순서를 바꾸는 등의 작업을 할 때는--force-with-lease
로도 충분- 꼭 필요할 때만
--force
사용
-
git pull --rebase origin master
- master에서 branch A, B를 각각 만들고 예를 들어 A branch가 먼저 merge해서 B에서 A branch의 master 변경 사항을 합쳐야 할 경우
- rebase하고 난 후 remote/B와는 git history가 달라서 git push -f로 remote에 넣어줘야 했음
-
Rewriting history git commit --amend git rebase git rebase -i git reflog
-
An introduction to Git merge and rebase: what they are, and how to use them
-
Squash commits into one with Git multiple commits를 하나의 new commit으로 변경
-
git rebase로 commit 합치기 – Jihun's Development Blog squash fixup
-
Git squash로 여러 커밋을 하나로 만들기 - Git squash를 사용하여 여러 커밋을 하나의 커밋으로 만드는 방법에 대해서 알아봅니다
-
12.2: Rebase 시 "ours" 와 "theirs", 로컬과 원격 개념 이해하기 :: 노초코의 주경야독
-
Fatal: Not possible to fast-forward, aborting / fatal: 정방향이 불가능하므로, 중지합니다. | 웹으로 말하기
-
reflog
- Rewriting history git commit --amend git rebase git rebase -i git reflog
- How to undo your git failure Using
git reflog
andgit reset
to save your code - git - reflog - YouTube
- 내 마음대로 커밋을 다뤄보자 - reset, revert, reflog
- Git reflog: Restore Version Control History - DEV Community 👩💻👨💻
- 팀장님에게 칭찬받기 좋은 Git 꿀팁 2가지 | 요즘IT bisect, reflog
-
remote
-
이미 존재하는 project를 fork한 후 pull request를 위해 원래 repository와 연결
$ git remote add [name] [email protected]:[id]/[project].git $ git fetch [name] $ git branch -a * master remotes/[name]/[branch name] remotes/origin/HEAD -> origin/master $ git merge [name]/[branch name] ...
-
How to update a forked repo with git rebase
❯ git remote add upstream [https://github...] ❯ git fetch upstream ❯ git rebase upstream/master ❯ git push origin master
-
Fork 저장소 동기화하기 - Fork한 저장소(Repository)와 원본 저장소(Repository)를 동기화(Sync)하는 방법에 대해서 알아봅시다
-
transfer repository(git to git, create repository to move)
$ cd old_repo $ git remote -v origin [email protected]:id/old_repo.git (fetch) origin [email protected]:id/old_repo.git (push) $ git remote set-url origin [email protected]:id/new_repo.git $ git remote -v origin [email protected]:id/new_repo.git (fetch) origin [email protected]:id/new_repo.git (push) $ git push -u origin --all Counting objects: 74, done. Delta compression using up to 16 threads. Compressing objects: 100% (67/67), done. Writing objects: 100% (74/74), 163.78 KiB, done. Total 74 (delta 13), reused 0 (delta 0) To [email protected]:id/new_repo.git * [new branch] master -> master Branch master set up to track remote branch master from origin. $
-
git remote update
Git remote branch 가져오기
-
-
reset
-
scalar
- Scalar: A set of tools and extensions for Git to allow very large monorepos to run on Git without a virtualization layer
- The Story of Scalar | The GitHub Blog
- 이번 Git v2.38.0에 포함된
scalar
명령어는 대규모 저장소의 성능 문제를 특별히 해결하기 위한 명령어- git clone 대신 scalar clone 사용
- partial clone, sparse checkout, maintenance같은 성능 관련 명령어가 여기 모두 포함되어 있고
- 이미 클론한 저장소라면 scalar register로 사용 가능
- 이 글은 Scalar가 만들어져서 Git에 포함되기까지의 과정을 설명한 글
- VFS for Git은 Microsoft의 Windows OS 모노레포를 Git으로 전환하기 위해 작성, 읽기 할 때만 파일 로드 가능
- Microsoft Office 모노레포도 VFS for Git을 이용하여 Git으로 갈아탈 예정이었지만 여기서는 macOS도 지원해야 했는데 macOS에서는 VFS 사용 어려움
- Office 모노레포틑 sparse checkout을 사용할 수 있었지만, sparse checkout은 성능 때문에 VFS for Git에서는 사용하지 않음
- sparse checkout의 성능 때문에 cone 모드를 추가했고 이를 통해 VFS와 비슷한 성능 도달 가능
- 이러한 프로토타입의 가치가 증명되었고 VFS for Git과 별개로 만들기로 결정해서 Scalar라는 이름 선택
- 기존 VFS for Git 대신 Scalar라는 새로운 저장소를 선택하고
- VFS for Git의 코드를 새 아키텍처로 개선하고
- 백그라운드에서 git 명령어를 계속 수행하고 파일을 최신 상태로 유지하는 서비스도 git background maintenance를 개발해서 대체
- 이렇게 변경하고 보니 Git 위에 있는 CLI 형태로 바뀌었기 때문에 C# 코드를 유지할 필요가 없어서 C로 포팅하고 아키텍처가 훨씬 단순화
- 대규모 저장소의 요구사항이 Microsoft에만 있는 것이 아니므로 Git의
contrib/
디텍로리를 통해 Git 업스트림에 기여 시작, 2.38.0 릴리스에 맞춰서 Git의 일부로 포함
- 이번 Git v2.38.0에 포함된
-
stash
-
submodule
- Mastering Git submodules
- Git: 서브모듈 이해하기 (git submodule)
- Git submodule add: “a git directory is found locally” issue
rm -rf .git/modules/[submodule name]
- Easy way pull latest of all submodules
- 여러개의 Git 저장소 (repository)로 이루어진 프로젝트 관리하기
- git submodule로 오픈소스 upstream 관리하기
- How to manage the local submodule without URL like github.com
- 저장소 안에 저장소 - git submodule - YouTube
- Git 의 서브모듈(Submodule) - Sungho's Blog
- 효율적인 Git 리포 관리: 서브모듈 대신 이것을 사용하면...? - YouTube
- Mono-repo vs Git Submodules vs 각자 도생 repo: 어떤걸 선호하 | GeekNews
-
subtree
-
$ git tag -a [tagname] -m "[annotation]" $ git show [tagname] $ git push origin --tags
-
How to: Delete a remote Git tag
git tag -d 12345 git push origin :refs/tags/12345
-
GitHub에서 Release/Tag 자동으로 만들어 주기(1분만에 설정) | by Ted Park | PRND | Nov, 2021 | Medium
-
-
worktree
- Think Like Git - Eli Sander | PyData Global 2021 - YouTube
- Version-Control Post-Git • Pierre-Étienne Meunier • GOTO 2023 - YouTube
- UNIVERSE - Two full days on how to build, collaborate, and deploy great software presented by GitHub
- GitHub Universe 2023 참석기 #1 :: Outsider's Dev Story
- GitHub Universe 2023 참석기 #2 :: Outsider's Dev Story
- GitHub Universe 2018 참석기 #1
- GitHub Universe 2018 참석기 #2
- GitHub Universe 2019 참석기
- 한글자막 GitHub universe 2019 1일차 키노트 하이라이트
- Everything new from Universe 2021 | The GitHub Blog
- GitHub Universe를 통해서
- 커스텀 필드나 이터레이션을 사용할 수 있는 새 GitHub Isusues가 퍼블릭 베타
- github.com에서 Ctrl + k나 Cmd + k를 누르면 빠르게 원하는 곳으로 이동할 수 있는 커멘트 팔레트 출력
- 아직 프라이빗 베타이지만 Pull Request를 바로 merge하는 대신 merge queue에 넣고 최신 베이스 브랜치와 검사를 해준 뒤에 merge할 수 있는 merge queue 추가
- It Depends - GitHub Universe 2021 - YouTube
- 쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
- "쿠버네티스와 깃옵스는 빵과 버터" 구글이 깃옵스를 간소화하는 방법 - ITWorld Korea
- GitOps As an Evolution of Kubernetes - YouTube
- GitOps 기반의 클러스터 구축하기 1부 — Terraform Cloud, Github Action 적용 | by Haeman Lee | Feb, 2023 | YOGIYO Tech Blog - 요기요 기술블로그
- GitOps Observability — Visualizing the journey of a container | by Samiya Akhtar | Nov, 2020 | Medium
- 깃옵스가 '아직' 주류로 부상할 준비가 되지 않은 이유 - ITWorld Korea gitops
- Observability and GitOps - DZone DevOps
- 데브옵스의 확장 모델 - 깃옵스(GitOps) 이해하기 : 네이버 포스트
- 복잡한 커밋 로그를 정리해줄 구원자, gitmoji
- OpenGitOps 1.0 is finally here and why you should care | OpenGitOps
- A ‘Hello World’ GitOps Example Walkthrough – zwischenzugs
- GitOps (Flux) Extension for VS Code with Kingdon Barrett - YouTube
- “지금 테스트서버 쓰시는 분?” (GitOps로 브랜치별 배포 시스템 구축하기) (1/2) | by 김희철 | 레몬베이스 (Lemonbase) | Sep, 2022 | Medium
- “지금 테스트서버 쓰시는 분?” (GitOps로 브랜치별 배포 시스템 구축하기) (2/2) | by Noah | 레몬베이스 (Lemonbase) | Nov, 2022 | Medium EKS ArgoCD Helm
- Bare-Metal Chronicles: Tinkerbell, Cluster API & GitOps • Katie Gamanji • GOTO 2022 - YouTube
- 깃옵스(GitOps)를 여행하려는 입문자를 위한 안내서 | 요즘IT
- Software Rollout at Scale: Using GitOps to Scale Kubernetes Rollouts • Thor Lange • GOTO 2023 - YouTube
- GitOps Best Practices Whitepaper | Akuity
- Argo CD를 만드는 Akuity에서 GitOps 베스트 프랙티스 백서 공개
- 24페이지의 PDF 문서로 Git 워크플로우, 레퍼지토리 디렉터리 구조, GitOps를 사용한 CI/CD, 렌더링 된 Manifests 설명
- Alex Xu on X: "GitOps Workflow - Simplified Visual Guide GitOps brought a shift in how software and infrastructure are managed with Git as the central hub for managing and automating the entire lifecycle of applications and infrastructure. It's built on the principles of version control,… https://t.co/Y8QKplK9yW" / X
- Deploying microservices: the path from laptop to production
- 통합된 개발과 배포 : Monorepo와 GitOps의 매력적인 조합
- kargo: Application lifecycle orchestration
- Introducing Kargo | Akuity
- Argo 프로젝트를 만드는 Akuity에서 GitOps에 맞게 CD 파이프라인을 재구성, 각 스테이지를 연결해서 배포 조건, 생명 주기, 테스트를 설정 가능
- Introducing Kargo | Akuity
- capacitor: A general purpose UI for FluxCD
- Introducing Capacitor, a general purpose UI for Flux | Flux
- GitOps 도구인 Flux가 지금까지는 CLI만 있었지만 이번에 Capacitor라는 GUI를 도입
- Introducing Capacitor, a general purpose UI for Flux | Flux
- gitopper: Gitops for non-Kubernetes folks
- Manage multiple Git identities
- GitHub 멀티 어카운트를 사용할 때 유용한 Git 설정 - LainyZine
- GitHub과 연동해서 의존성 라이브러리를 관리할 수 있는 서비스들
- 개발 툴소개 + 수다 (2018-12-07) 시드니 개발자 아저씨 케빈의 개발자 방송 Live
- Github 컨텐츠 관리 플랫폼 개발
- 3 Chrome Extensions to Give GitHub Superpowers | by Alessia Amitrano | Better Programming | Medium Octolinker, Octotree
- 5 open source alternatives to GitHub | Opensource.com
- actions-permissions: GitHub token permissions Monitor and Advisor actions
- New tool to secure your GitHub Actions | The GitHub Blog
- GitHub Actions에서 보통
GITHUB_TOKEN
을 사용해서 권한을 가져오는 데 필요한 것보다 많은 권한을 가지게 되는 경우 다수 - 필요한 최소한의 권한만 가질 수 있도록 actions-permissions를 오픈 베타로 공개
- 여기에 포함된 Monitor action은 프락시를 통해서 워크플로가 사용하는 API 정보를 수집해서 이를 요약해서 보여주고
- Advisor action은 로컬에서도 사용 가능
- 워크플로를 여러 번 실행해서 권장 사항을 요약
- GitHub Actions에서 보통
- New tool to secure your GitHub Actions | The GitHub Blog
- Atomist Project Templates Starting a new project should take near-zero effort, so you can get to writing code. That’s what we believe, and that’s what we’re building.
- binder - Turn a GitHub repo into a collection of interactive notebooks
- bit: Bit is a modern Git CLI
- bitbar 1일 1커밋의 목표를 가지고 있다면? - Bitbar Github 플러그인 설정하기 | Fernando 기술 블로그
- blograss: Easy to show your passion of blogging
- Central Dogma - an open-source highly-available version-controlled service configuration repository based on Git, ZooKeeper and HTTP/2
- Cgit, Nginx & Gitolite: A Personal Git Server « Bryan Brattlof
- classroom github - Your course assignments on GitHub
- CloneGits - A tool to clone all of a user's GitHub repos to the local machine
- codebeat - Get instant feedback on your code
- CodeQL documentation 원하는 대로 쿼리문을 작성해서 코드의 취약점 등을 검사할 수 있는 도구
- Introducing the CodeQL package manager (public beta) | GitHub Changelog
- GitHub에서 코드를 검사할 수 있는 CodeQL의 패키지 매니저가 퍼블릭 베타로 열려서 CodeQL 패키지를 사용하거나 직접 업로드 가능
- CodeQL zero to hero part 1: the fundamentals of static analysis for vulnerability research | The GitHub Blog
- GitHub에서 취약점 분석을 위해 제공하는 CodeQL을 설명하는 시리즈 글 1편, 취약점 분석의 발전 과정 설명
- 사용자 입력이나 파라미터처럼 오염될 수 있는 "소스"와 취약점을 가질 수 있는 위험한 함수인 "싱크(sink)"가 있는데 소스에서 싱크까지 데이터 흐름이 이어졌을 때 취약점이 발생
- 문자열 매칭으로 이 소스와 싱크를 찾을 수는 있지만 오탐지가 너무 많기 때문에 토큰화를 통하면 소스와 싱크를 더 쉽게 찾을 수 있지만 데이터 흐름까지 추적하기는 어려움
- 이를 해결하기 위해 추상 구문 트리(AST)를 구축하는데 제어흐름 그래프로 소스와 싱크의 데이터 흐름을 파악할 수 있기 때문에 여기 오염도(Taint) 추적을 통해 더 명확하게 소스와 싱크가 이어지는 취약점만 발견 가능
- Introducing the CodeQL package manager (public beta) | GitHub Changelog
- Copilot · Your AI pair programmer
- 공개된 코드로 학습된 OpenAI의 Codex 모델을 이용해서 GitHub에서 AI와 페어 프로그래밍
- 주석을 이해해서 코드를 작성해 주거나 반복적인 코드를 완성해 주거나 다른 코드를 제시
- Github Copilot에 관한 생각
- AI로 코딩?! 깃허브 코파일럿(GitHub Copilot) 프리뷰를 써봤습니다! - YouTube
- GitHub Copilot: A Powerful, Controversial Autocomplete for Developers – The New Stack
- 백지장도 'AI'가 맞들면 더 낫다··· 코딩 돕는 ML 도구 3가지 - CIO Korea
- 깃허브 코파일럿, 개발자 반응은?··· "놀랍도록 유용"vs"아직 미흡" - CIO Korea
- Research recitation - GitHub Docs
- GitHub Copilot의 8가지 대안
- Copilot 설명 및 사용기 | GeekNews
- GitHub's Copilot Still a Long Way From Autopilot
- 칼럼ㅣ깃허브 코파일럿에서 ‘희망’을 보았다 - CIO Korea
- GitHub Next | GitHub Copilot Labs
- GitHub이 공개한 AI 페어 프로그래머인 Copilot의 테크니컬 프리뷰를 하면서 제안 품질과 안정적인 기능을 개선하고 있는데
- 이를 더 도와줄 수 있는 GitHub Copilot Labs VS Code 익스텐션 공개
- 이 익스텐션에는 코드 설명하기(Explain this code), 코드 변환하기(Translate this code) 두 가지 기능 제공
- "Explain this code"는 코드 블록의 동작을 영어로 설명
- "Translate this code"는 해당 코드를 다른 프로그래밍 언어로 바꿔주는 기능
- 이 익스텐션은 Copilot 익스텐션을 필요로 하므로 현재는 Copilot 익스텐션을 사용할 수 있는 사람만 사용 가능
- GitHub이 공개한 AI 페어 프로그래머인 Copilot의 테크니컬 프리뷰를 하면서 제안 품질과 안정적인 기능을 개선하고 있는데
- 깃허브 코파일럿(Copilot)은 무엇이며, 왜 욕먹는 걸까? | 요즘IT
- Codeberg.org
- copilot-docs/docs at main · github/copilot-docs Copilot JetBrains와 Neovim에서 이용 가능
- GitHub Copilot JetBrains IDE/VS Code에서 설정하기 :: Outsider's Dev Story
- “개발자들, 코파일럿 많이 쓸수록 생산성 향상됐다 느껴” 깃허브 - CIO Korea
- ML code generation vs. coding by hand - what we think programming is going to look like | Wasp
- GitHub Copilot: your AI pair programmer - GitHub Checkout - YouTube
- Could GitHub Copilot produce a vulnerable code? | by YevhSec1 | Aug, 2022 | Medium
- Github Copilot AI가 만든 코인 자동매매 봇 돌려봄... 와 - YouTube
- Research: quantifying GitHub Copilot’s impact on developer productivity and happiness | The GitHub Blog
- Google Published Results on How ML-Enhanced Code Compilation Could Improve Developers’ Productivity
- GitHub Copilot investigation · Joseph Saveri Law Firm & Matthew Butterick
- GitHub Copilot을 조사하는 사이트
- Copilot이 학습한 코드에 대해 문제 제기
- 오픈소스는 라이선스의 의무를 따르거나 라이선스의 예외 적용을 받는 공정 사용 둘 중 하나여야 하는데
- Copilot이 라이선스 의무를 따를 수는 없으므로 공정 사용이어야 하고 실제로 GitHub에서도 공정 사용이라고 대답
- 하지만 이에 대한 자료를 제공하지 않고 있고
- AI의 공정 사용도 어떻게 적용될지 알 수 없고
- 일부에서는 라이센스 문제가 있는 코드도 학습에 사용되었다는 의혹도 제기
- 이 사이트에서는 AI 코딩을 반대한다기보다
- GitHub Copilot에 문제를 제기하고 있고
- 잘못된 코드의 생산으로 오픈소스 생태계에 장기적으로 안 좋은 영향을 줄 수 있다고 하며
- 사용자들의 의견과 제보를 받고 있음
- Microsoft Ignite Spotlight on Korea의 GitHub Copilot 발표 자료 :: Outsider's Dev Story
- Amazing GitHub CoPilot - Create a Java to check if a number is prime and if a string is a palindrome - YouTube
- How I used GitHub Copilot to build a browser extension | The GitHub Blog
- 크롬 확장 프로그램을 GitHub Copilot을 사용해서 만드는 과정을 정리한 글
- GitHub Copilot의 채팅 기능을 이용해서 질문하면서 파일에 자세한 설명을 제공하면서 코드를 자동완성 하면서 익스텐션 작성
- GitHub Copilot의 도움으로 익스텐션을 만들어 보지 않았음에 만들 수 있었지만 쉽게 배울 수 있을 학습 작업 자체를 대체하진 않으므로 프롬프트도 실행해 보고 다양한 질문이나 검색도 했다고 함
- GitHub Copilot X: The AI-powered developer experience | The GitHub Blog
- OpenAI와 협업해서 Codex 모델로 GitHub Copilot을 공개했지만, AI 기반 자동완성은 시작점에 불과했고 GitHub Next의 R&D 팀은 개발 라이프사이클 전체에 AI 지원을 받을 수 있도록 노력한 결과 GitHub Copilot X를 공개
- GitHub Copilot X는 GPT-4 모델을 사용해서 VS Code와 Visual Studio에서 개발자 시나리오에 맞춰 GitHub Copilot Chat을 제공하고 GitHub Copilot Voice도 지원
- Copilot for Pull Requests를 통해 Pull Requests를 GPT-4 모델 기반으로 AI가 작성한 설명 지원
- GitHub Copilot for Docs는 채팅 인터페이스로 문서에 대해 AI가 답변하도록 지원하며 React, Azure Docs, MDN을 지원하고 있으며 Copilot for CLI도 개발
- 각 서비스는 대기열에 추가해서 승인되면 사용
- AI를 활용한 개발 효율성 향상 방법 : 네이버 블로그
- “세상 참 좋아졌네”…깃허브 코파일럿 리뷰 | 요즘IT
- Inside GitHub: Working with the LLMs behind GitHub Copilot | The GitHub Blog
- GitHub에서 Copilot을 어떻게 만들고 개선해 왔는지 설명
- 이전에도 범용 코드 생성에 관해서 얘기하고 있었지만 불가능하다고 얘기했었다가 2020년 6월 OpenAI가 GPT-3를 출시하면서 모든 게 변경
- OpenAI에서 API를 테스트하면서 코드 스니펫을 생성하는 프로토타입을 만들고 IDE에 넣기로 결정하면서 GitHub Copilot 만들기 시작
- 처음 받은 모델은 Python 전용 모델이었지만 그다음에는 JavaScript 모델을 받고 여러 언어를 지원하는 모델을 제공받음
- 2021년 OpenAI와 파트너십을 통해 GPT-3에서 파생되어 코드를 학습한 Codex 모델 출시
- 모델은 강력했지만, 사용자에게 좋은 결과를 제공하기 위해서는 개선 필요, 현재 편집 중인 파일만이 아니라 더욱 정확한 결과가 나오도록 추가 컨텍스트를 제공 필요
- 편집기 탭에서 유사한 텍스트를 가져오게 한 뒤에 수락률이 많이 증가, 파일명이나 확장자를 통해 결과를 더 개선
- GitHub에서 Copilot을 어떻게 만들고 개선해 왔는지 설명
- VDIASI23 - Vlad Iliescu - Future-Proof Development with GitHub Codespaces, Copilot, and GPT-4 - YouTube
- Universe 2023: Copilot transforms GitHub into the AI-powered developer platform - The GitHub Blog
- GitHub 콘퍼런스인 Universe에서 AI 관련 기능 출시
- GitHub Copilot Chat이 12월 정시 출시 예정
- 기존 Copilot 사용자는 사용할 수 있고 GPT-4 기반이며 에디터의 코드 기반으로 질문을 하거나 /fix, /test같은 명령어 사용 가능
- JetBrains IDE도 지원
- GitHub Copilot Chat이 github.com에도 통합되어 웹에서 바로 대화를 나눌 수 있으며 GitHub 앱에도 통합될 예정
- GitHub Copilot Enterprise 출시
- 24년 2월 정식 출시 예정
- GitHub Copilot Enterprise 최상위 요금재로 매월 사용자당 $39(Copilot Business는 $19, 개인은 $10)
- 회사의 github 저장소와 연결해서 비공개 코드를 기반으로 제안 가능
- Pull Request 요약 생성 기능 지원
- GitHub Advanced Security에서 AI 기반 보안 기능 지원
- GitHub Copilot Chat에서 IDE에서 취약점 수정 제안
- Pull Request에서 JavaScript/TypeScript에 대해 코드 스캐닝을 통해 AI가 취약점 수정 사안 제안
- GitHub Next | Copilot Workspace
- GitHub 이슈에서 워크스페이스를 열면 변경에 대한 제안을 AI가 해주고 이를 바로 코드 수정 및 실행한 후 Pull Request까지 가능
- 24년 출시 예정
- GitHub Copilot Workspace: Welcome to the Copilot-native developer environment - The GitHub Blog
- GitHub 이슈에서 AI를 이용해서 변경 사항을 제시하고 Pull Request까지 올릴 수 있는 GitHub Copilot Workspace의 테크니컬 프리뷰 공개
- 돌겠네... Copilot 때문에 XX프로그래머 사라질수도... - YouTube
- GitHub Copilot Workspace: 이슈에서 시작하는 Copilot 네이티브 개발 환경 :: Outsider's Dev Story
- GitHub Next | Copilot for CLI
- DarkHunt흑엽 블로그 - <VScode나 VS2022에서 GitHubCopilot을 사용하는 방법> + 최근 9시 뉴스에서 GPT 코딩에 대한 이야기가 나오면 화병 날 것 같은 이유
- Let's Build a Website in 10 minutes with GitHub Copilot // Bryant Son // AI in Production Conference - YouTube
- 코딩속도 200%? 코파일럿 제대로 활용하는 꿀팁! - YouTube
- New GitHub Copilot Research Finds 'Downward Pressure on Code Quality' -- Visual Studio Magazine
- GitClear의 "Coding on Copilot" 백서에서 AI 지원 코드의 품질과 유지 관리성을 조사했습니다.
- 주요 결과:
- 코드 청크: 2024년에 2021년 대비 두 배 증가할 것으로 예상
- 추가 코드 및 복사/붙여넣기 코드 비율 증가
- AI 생성 코드는 단기 계약자의 코드와 유사한 특성을 보임
- 주요 결과:
- 이는 GitHub의 2022년 연구 결과와 대조되는데, 해당 연구에서는 Copilot 사용 시 개발자 생산성과 만족도 향상을 발견했음
- GitClear 연구 결과 요약:
- 코드 청크 증가: AI 사용과 관련된 "오류 코드" 푸시 증가
- 리팩토링과 재사용 감소: 복사/붙여넣기 코드 증가
- 유지 관리 어려움 증가: 불필요한 코드 복제가 늘어남
- 다른 연구들도 Copilot의 장단점을 조사했으며, 향후 지속적인 평가가 필요할 것으로 보임
- GitClear는 153백만 줄의 코드 변경 내역을 분석했음
- GitClear의 "Coding on Copilot" 백서에서 AI 지원 코드의 품질과 유지 관리성을 조사했습니다.
- copilot-explorer | Hacky repo to see what the Copilot extension sends to the server
- GitHub Copilot이 너무 유용해서 어떻게 동작하는지 궁금해서 리버스 엔지니어링을 해보고 정리한 글
- 크게 보면 VS Code의 익스텐션인 클라이언트가 있고 여기서 보낸 프롬프트를 모델로 전송
- Copilot 모델에 보낼 프롬프트를 만들 때 접두사와 접미사를 통해 다른 파일에서 비교할 정보를 보내서 정확도를 향상
- 모델을 호출할 때 도움이 되지 않는 완성은 호출되지 않도록 하고 어떤 텔레메트리가 수집되는지를 살펴봄
- 분석하면서 Copilot-Explorer 도구를 만들어서 분석 도구를 직접 사용 가능
- Copilot-Explorer | copilot-explorer
- GitHub Copilot: Coding Will Never Be The Same Again • Ryan J. Salva • YOW! 2023 - YouTube
- VidiGo GitHub Copilot: Coding Will Never Be The Same Agai
- 깃허브 코파일럿: 코딩은 다시는 예전과 같지 않을 것입니다 - Ryan J. Salva - YOW! 2023 | The fastest way to absorb knowledge | Lilys AI | Lilys AI
14. 개발자가 AI 시스템 개발 도구를 사용하면 Pull requests와 빌드 수 증가
- 최초 개발자들은 건의를 제출하면서 30%의 수락률을 보이며, 시간이 흐를수록 능숙해지면서 매달 수락률이 조금씩 증가
- 450명의 개발자를 대상으로 6개월간 시행한 연구에서, AI 시스템 개발 도구를 사용하면 Pull requests 수가 50% 늘어나고, 병합된 PR 수도 15% 증가
- 또한 빌드 수도 50% 증가하며 빌드 성공률이 45% 향상되어 시간을 줄이고 코드 품질 향상
- 이로 인해 소프트웨어 개발 산업에 약 1.5조 달러의 경제적 영향이 예상되며, 세계적으로 3.75조 달러에 이를 수 있다는 연구 결과도 있음
- AI 활용으로 창의적 역할 및 시스템 아키텍트로 발전
- AI를 활용할 때, 더 창의적으로 활동하며 시스템 아키텍트처럼 보이는 세상으로 접근해야
- 메일 주소의 정규식을 기억하기 위해 문서를 찾아보는 것이 아니라, 노동자로서의 역할을 한정짓지 않게 될 것이다. 이것이 흥미롭고, 기대
- Introducing GitHub Copilot Extensions: Unlocking unlimited possibilities with our ecosystem of partners - The GitHub Blog
- GitHub Copilot의 Extensions 발표, 아직 Limited Beta라 직접 볼 수는 없지만
- 서드파티 서비스가 Copilot Extension을 만들면 VS Code를 벗어나지 않고 Copilot Chat에서 해당 서비스에 연결된 정보 질문 가능
- 바로 등록된 리소스의 정보나 배포 상태 등 확인 가능
- 회사 내에서 비공개 Extension도 만들 수 있어서 내부 API나 데이터와 연동하면 회사 내의 정보도 Copilot에서 사용 가능
- GitHub Copilot을 CLI 명령어에서 도움받을 수 있는 GitHub Copilot in the CLI :: Outsider's Dev Story
- Copilot 깃허브 코파일럿은 어떻게 작동하는가? | Daily Log
- Github Copilot 기능 톺아보기 | 개발자 Story | SKT Enterprise
- 쉽게 살 수 있을까 ? :: GitHub Copilot 소송..
- localpilot GitHub Copilot을 인터넷 연결 없이도 로컬에서 사용할 수 있게 하는 앱
- cz-cli: The commitizen command line utility Git 커밋 메시지의 작성을 도와주는 CLI 도구
- delta: A viewer for git and diff output
- dns.js.org - free and sleek URL for GitHub Pages
- dolt: Dolt – It's Git for Data
- every-git-commit-shorthash: Git repository with a commit for every single shorthash
- Flat Data GitHub OCTO | Flat Data
- Git을 이용해 데이터 처리. 다른 인프라스트럭처가 필요 없이 GitHub를 이용해서 데이터를 수집하고 보여줄 수 있게 하는 프로젝트
- 데이터를 수집하고 변환하는 GitHub Actions, 데이터 워크플로우를 작성하는 VS Code 확장 에디터, 처리된 데이터를 보는 뷰어 3가지로 구성
- GitHub OCTO라는 소프트웨어 개발의 미래를 연구하는 CTO 조직에서 작성
- Fork - a fast and friendly git client for Mac and Windows
- Fossil Get started with Fossil, an alternative to Git | Opensource.com
- fugitive
- gg - hybrid version control system
- gh
- github 관리툴 gh 맛보기
- Supercharge your command line experience: GitHub CLI is now in beta
- Introducing Official GitHub CLI
- GitHub CLI allows you to close, reopen, and add metadata to issues and pull requests
- GitHub CLI 1.0 is now available - The GitHub Blog
- GitHub CLI 를 만져보자 - 1
- GitHub CLI 를 만져보자 - 2
- GitHub 공식 CLI gh :: Outsider's Dev Story
- bit: Bit is a modern Git CLI
- Scripting with GitHub CLI - The GitHub Blog
- Work with GitHub Actions in your terminal with GitHub CLI - The GitHub Blog
- GitHub CLI gh의 새 기능 살펴보기 :: Outsider's Dev Story
- GitHub CLI 2.0 includes extensions! | The GitHub Blog
- Do more with GitHub through GitHub CLI & what is new in GitHub CLI 2.0! - YouTube
- gh-dash: gh cli extension to display a dashboard of PRs and issues - configurable with a beautiful UI
- GHFS - GitHub repos in your filesystem!
- ghrequest - HTTP client for the GitHub API with cache support to get the most of your rate limit
- giistr - Contribute to build the open-source world. Search, filter and help easily on the issues of the repositories you starred 기여할 수 있는 open source project 검색
- giscus utterances와 비슷하게 GitHub의 Discussions를 사용한 댓글 시스템
- 블로그에 댓글 기능 추가하기, Giscus | Joohee Kim's Blog
- Utterances 에서 Giscus 로 마이그레이션하기
- GitHub의 이슈를 댓글 시스템으로 쓰는 Utterances가 있는데 최근에는 GitHub의 디스커션으로 댓글 시스템도 출시
- Utterances도 좋긴 하지만 제약이 좀 있어서 Giscus를 설정하고 수동으로 마이그레이션하는 방법을 정리한 글
- Giscus 댓글, 텔레그램 (Telegram) 으로 알람 받기
- Git Annex
- gitamine: A graphical user interface for git
- Commit Graph Drawing Algorithms | pvigier’s blog
- 글쓴이의 Design and implementation of a graphical user interface for git라는 석사 논문의 일부
- 프로토타입으로 만든 git 클라이언트에서 커밋 그래프를 그리는 알고리즘에 대한 설명
- 자주 보는 커밋그래프이지만 그 안에 있는 복잡함을 볼 수 있음
- Git의 특성에 따라 그래프를 그리기 전에 커밋 정렬 필요
- 이때 날짜도 작성자의 날짜인지 커미터의 날짜인지도 선택 필요
- 이를 바탕으로 커밋의 위상적 순서를 출력하는 알고리즘 작성
- 이를 곧은 가지로 표현해서 Git의 브랜치를 시각화할 수 있게 구현
- 글쓴이의 Design and implementation of a graphical user interface for git라는 석사 논문의 일부
- Commit Graph Drawing Algorithms | pvigier’s blog
- git-absorb: git commit --fixup, but automatic
- git bash Windows 사용자를 위한 Git Bash 설정
- GitButler | Git Branching, Refined
- git-cliff: A highly customizable Changelog Generator that follows Conventional Commit specifications ⛰️ Git 히스토리를 이용해서 체인지로그 문서를 만드는 CLI 도구
- gitcolony - THE NEXT GENERATION OF PULL REQUESTS
- git compound - Compose you projects using Git repositories and Ruby tasks
- gitea 설치로 git 웹호스팅 서버 구축하기
- Git Exercises local machine에서 문제를 하나씩 해결해 git을 배우는 방식
- Git Explorer Find the right commands you need without digging through the web
- git-fake 교육용으로 간단하게 여러개의 커밋을 만들어야 하는 경우 귀찮음을 줄여주는 프로그램
- git fastclone
- git-fresh - Fresh Git repository
- gitfs - Version controlled file system
- git-ftp: Uses Git to upload only changed files to FTP servers
- GitGuardian: Git Security Scanning & Secrets Detection
- Githelp
- git-history - Quickly browse the history of any GitHub file https://githistory.xyz
- git-hub - Do GitHub operations from the
git
command - github1s
- github-api-helper-ts: Helper using GitHub API
- github-artifact-exporter: A set of packages to make exporting artifacts from GitHub easier
- GitHub의 데이터를 내보내기 쉽게 도와주는 GitHub에서 만든 패키지. 현재 이슈를 CSV나 JSON으로 export
- github-auto-locker: Automatically lock old, closed GitHub issues
- GitHub Awesome: Browse Every Awesome List on GitHub
- GitHub Desktop | Simple collaboration from your desktop
- github-following-tracker: 🌈 GitHub following, followers, only-following, only-follower tracker 🌈
- GitHub Hovercard - Quick user hovercard for GitHub
- GitHub Innovation Graph
- 각 연구자가 GitHub의 데이터에 관심 있지만 데이터를 얻는 데 많은 장벽이 있다는 것을 깨닫고 이를 쉽게 확인하고 사용할 수 있도록 Innovation Graph 공개
- Innovation Graph에서 GitHub 내의 커밋, 저장소, 개발자, 프로그래밍 언어의 횟수를 국가별로 확인 가능
- 이 데이터를 저작권이 없는 CC0-1.0 라이센스로 다운로드 가능
- github-ko-ext: 깃헙 한글화 확장 프로그램
- GitHub Pages
- GitHub Pages for Non-Rubyists
- GitHub Pages 도메인 네임 설정 하기
- React GitHub Pages에 배포 - create-react-app으로 만든 React 프로젝트를 GitHub Pages에 배포해 보도록 합시다
- GitHub Pages now uses Actions by default | The GitHub Blog
- Jekyll로 시작되었던 GitHub의 정적 페이지 서비스인 GitHub Pages가 GitHub Actions를 사용하도록 변경
- 6개월 정도 공개 저장소에서 테스트한 뒤 이제 비공개 저장소에서도 사용 가능
- 이제 정적 사이트 생성기가 많아서 GitHub Pages에도 관련 요구 사항이 많아졌는데
- 이제 Actions를 사용하게 되면서 브랜치로 한정되는 제약이 없어지고
- github-pages 배포 환경 컨텍스트에 따라 작성 가능
- Jekyll로 시작되었던 GitHub의 정적 페이지 서비스인 GitHub Pages가 GitHub Actions를 사용하도록 변경
- 기술 블로그에 Giscus를 추가했습니다! | Univdev
- 개발자의 DIY: Github Pages로 나만의 모바일 초대장 제작하기
- Host your Database for Free on Github Pages - YouTube
- github.surf
- git-internals-pdf: PDF on Git Internals
- Gitiny - iOS app for GitHub with exploring trending
- Git-it - a desktop (Mac, Windows and Linux) app that teaches you how to use Git and GitHub on the command line
- GitKraken
- GitLab
- Dockerized gitlab web server http://www.damagehead.com/docker-gitlab
- GitLab flow에서 배울 워크 플로우의 실천
- Git Flow가 가진 문제점과 솔루션:\ GitLab Flow | DevSecOps 구축 컨설팅, 교육, 기술지원 서비스 제공
- Towards a production quality open source Git LFS server
- GitLab Live Stream
- 마음에 드는 #gitlab todos
- CI/CD with Angular 6 & Firebase & GitLab - Automate build, test and deployment using GitLab CI/CD
- GitLab Runner + Windows + Spring 연동
- “실수에 관대한 문화가 데브옵스의 키포인트”…데브옵스 플랫폼 깃랩
- gitlab 웹 접속 포트를 바꿔 봅시다
- gitlab 8080 포트 대신 다른 포트를 사용하게 바꿔봅시다
- 내블로그 :: gitlab ci Docker 연동
- GitLab Geo 구성하기 — 분석 #1. 개요 | by 허니하린 | Cloud Villains | Sep, 2021 | Medium
- 어느날 갑자기 배포가 되지 않았다
- Gitlab CI CD Pipeline Tutorial FULL COURSE🔥 - YouTube
- GitLab CI/CD pipeline con i custom runners e Docker - YouTube
- Gitlab CI/CD With Docker And Kubernetes For Microservices | Full Episode - YouTube
- GitLab 차세대 ‘CI/CD 컴포넌트’ 알아보기 | InfoGrab, DevOps 전문 기술 기업 | 인포그랩 | GitLab기반 DevSecOps 구축,컨설팅,교육,기술지원 서비스 제공
- Git스러운 협업 체인 만들기
- 깃허브 vs. 깃랩, 무엇을 써야할까 - ZDNet korea
- Build a Node JS Project Using Docker in Gitlab | by S3CloudHub | Aug, 2022 | Medium
- gitlab 컨테이너 backup/restore(백업 및 복원)
- Triage로 GitLab 이슈 관리 개선하기 | InfoGrab, DevOps 전문 기술 기업 | 인포그랩 | GitLab기반 DevSecOps 구축,컨설팅,교육,기술지원 서비스 제공
- GitHub vs GitLab: Which is Better in 2024? | by Lena Charles | Jan, 2024 | Level Up Coding
- AI와 옵저버빌리티로 개발자 생산성 올리는 비결(feat. GitLab 밋업) | InfoGrab, DevOps 전문 기술 기업 | 인포그랩 | GitLab기반 DevSecOps 구축,컨설팅,교육,기술지원 서비스 제공
- GitLab 기술 문서 번역용 GPT 설계 가이드 | InfoGrab, DevOps 전문 기술 기업 | 인포그랩 | GitLab기반 DevSecOps 구축,컨설팅,교육,기술지원 서비스 제공
- Pulumi로 GitLab 리소스 효과적으로 관리하기 | InfoGrab, DevOps 전문 기술 기업 | 인포그랩 | GitLab기반 DevSecOps 구축,컨설팅,교육,기술지원 서비스 제공
- GitLab 쉽게 배우는 노하우 대방출(Feat. GitLab 밋업) | InfoGrab, DevOps 전문 기술 기업 | 인포그랩 | GitLab기반 DevSecOps 구축,컨설팅,교육,기술지원 서비스 제공
- GitLab Geo는 뭐지오? | InfoGrab, DevOps 전문 기술 기업 | 인포그랩 | GitLab기반 DevSecOps 구축,컨설팅,교육,기술지원 서비스 제공
- AWS CodeCommit, GitLab 마이그레이션 최종 가이드 | InfoGrab, DevOps 전문 기술 기업 | 인포그랩 | GitLab기반 DevSecOps 구축,컨설팅,교육,기술지원 서비스 제공
- 파이프라인 개발 간소화 핵심! GitLab CI/CD 컴포넌트, 카탈로그 잘 써먹기 | InfoGrab, DevOps 전문 기술 기업 | 인포그랩 | GitLab기반 DevSecOps 구축,컨설팅,교육,기술지원 서비스 제공
- DevOps GitLab 버전 업그레이드는 계속 된다. | by 루카스Lucas(이상배) / DevOps팀 | Sep, 2024 | 여기어때 기술블로그
- gitlocalize.com 오픈소스를 번역할 때 유용한 Git Localize 사용법 - 사진찍는 웹 개발자
- git-meld-index - Run meld or any git difftool to interactively stage changes
- Git Miner Dig into guts of git history
- Git-mirror-sync - a GitHub service that allows users to easily backup there GitHub repositories to private BitBucket mirrors
- git-open: Type
git open
to open the GitHub page or website for a repository in your browser - gitoxide: An idiomatic, modern, lean, fast, safe & pure rust implementation of git
- gitpod - One-Click Online IDE for GitHub
- Scala - Gitpod
- 클라우드 기반 IDE 플랫폼 ‘깃파드(Gitpod)’, 오픈소스로 전환 - CIO Korea
- JetBrains Gateway 및 Gitpod를 이용한 원격 개발 | JetBrains News
- Codespaces, Gitpod, Devpod what cloud and container-based IDEs can do for you by Matthias-Haeussler - YouTube
- 📝 웹 브라우저에서 코딩을 - YouTube
- GitPod, Kubernetes를 떠나기로 결정 + GitPod Flex 발표 | GeekNews
- git-punish
- GIT PURR! Git Commands Explained with Cats! – GirlieMac! Blog
- GitQlient - a multi-platform Git client originally forked from QGit
- git-quick-stats로 보는 다양한 Git 통계
- git-radar - A heads up display for git
- git-remote-dropbox
- gitrob - Reconnaissance tool for GitHub organizations http://michenriksen.com/blog/gitrob-putting-the-open-source-in-osint
- gitsign: Keyless Git signing using Sigstore
- git-sim: Visually simulate Git operations in your own repos
- Git의 학습을 위해 Python으로 git-scm이라는 도구를 만들어서
- git merge, git rebase등의 명령어를 사용할 때 git-scm 명령어를 사용하면 어떻게 동작하고 어떤 상태인지 이미지로 표현
- --animate 옵션을 주면 변화과정 관찰 가능
- git-sim - Visually simulate Git operations in your own repos with a single terminal command
- Git의 학습을 위해 Python으로 git-scm이라는 도구를 만들어서
- gitsome - A supercharged Git/GitHub command line interface (CLI). An official integration for GitHub and GitHub Enterprise: https://github.com/works-with/category/desktop-tools
- GitScraper - Downloads entire Git repositories from publicly accessible .git folders over HTTP
- Git scraping: track changes over time by scraping to a Git repository
- Git Sketch Plugin - A Git client generating pretty diffs built right into Sketch
- git-story - Tell the story of your Git project by creating video animations (.mp4) of your commit history directly from your Git repo
- gitswarm
- GitTorrent: A Decentralized GitHub
- gitui: Blazing 💥 fast terminal-ui for git written in rust 🦀
- GitUp
- Git-User-Switch: Switch git user and email at ease
- gitv
- git-visualizer
- gitxiv - Collaborative Open Computer Science
- gkv - Git as a KV store
- Gource - a software version control visualization tool
- grep.app - Search across a half million git repos
- Hot-Repos - Periodically share links of hot GitHub repositories on FB
- Hubaaa's GitHub Vacation Auto-Responder
- hub helps you win at git. http://hub.github.com
- isomorphic-git: A pure JavaScript implementation of git for node and browsers!
- Jandi | Disquiet* 깃헙 잔디를 맥 상태바에서 손쉽게 볼 수 있게 도와주는 동기부여 도구
- jj: A Git-compatible DVCS that is both simple and powerful
- joe - A .gitignore magician in your command line
- lazygit: simple terminal UI for git commands
- Magit! A Git Porcelain inside Emacs
- Octotree - GitHub 코드 트리를 쉽게 보여주는 브라우저 확장 프로그램
- Oh My Git! An open source game about learning Git!
- Pijul, a next-generation distributed version control system
- Plastic SCM - The Distributed Version Control for Big Projects
- Probot으로 GitHub App 만들기
- pullbox - A dead-simple dropbox alternative using Git
- PyGithub Github 저장소 API 호출로 삭제하기
- ReadmePlants/about-project.md at main · devxb/ReadmePlants
- refined-github: Browser extension that simplifies the GitHub interface and adds useful features
- release: Generate changelogs with a single command
- Robb Oat is a robot software engineer GitHub 이슈를 읽어서 이해한 뒤, 문제를 해결한 PR을 자동 발행하는 깃헙 앱
- Sapling from Meta | Sapling
- 가상 파일 시스템을 활용하여 메타의 거대한 모노리포에 있는 수억 개의 파일을 효과적으로 수정 가능
- GitHub에서 대중화된 Branch/Pull Request 모델 대신 Commit/Stacked Change 모델 사용
- Sapling: Source control that’s user-friendly and scalable
- Meta에서 10년 동안 내부에서 개발해서 사용 중이던 Git 호환 클라이언트를 오픈소스 공개
- Git 호환 클라이언트라 Git과 함께 쓸 수 있고 ReviewStack을 같이 쓰면 GitHub에서 stacked changes도 쉽게 볼 수 있음
- 메타, 대규모 소스코드 관리 시스템 오픈소스화 - 테크레시피
- scientist - 깃허브, 루비 언어용 리팩토링 도구 출시
- SCM Breeze is a set of shell scripts (for bash and zsh) that enhance your interaction with git
- SourceTree - Simplicity and power in a beautiful Git GUI
- Stacked Git – an application for managing Git commits as a stack of patches
- Stack Graph Introducing stack graphs | The GitHub Blog
- Sublime Merge Meet a new Git client, from the makers of Sublime Text
- talisman: Using a pre-commit hook, Talisman validates the outgoing changeset for things that look suspicious — such as tokens, passwords, and private keys
- three-git-tips
- Tig - Text-mode interface for git http://jonas.nitro.dk/tig
- TinyPress - The best GitHub writing platform
- toolgit: Git Productivity Toolkit
- ugit: DIY Git in Python
- Python으로 직접 Git을 구현해 보는 튜토리얼. 단계별로 구현하면서 Git 내부가 어떻게 동작하는지 이해 가능. 변경되는 Python 코드와 설명을 같이 보면서 따라 해 볼 수 있게 구성
- ungit - The easiest way to use git. On any platform. Anywhere
- utterances
- Zenhub - Issue Management Tool
- git - 간편 안내서
- 생활코딩 - GIT
- 알아서 잘 딱 깔끔하고 센스있게 정리하는 GitHub 핵심 개념
- 초심자를 위한 Github 협업 튜토리얼 (with 토끼와 거북이)
- Git 협업 가이드
- 초심자를 위한 git과 github 30분 맛보기
- Git이란 무엇일까요?
- Git 의 기초
- A developer’s introduction to GitHub
- Git과 Github 소개
- 깃을 위한 flight rules
- Git Koans
- 19 Tips For Everyday Git Use
- 5 GitHub tips for new coders
- Aha! Moments When Learning Git
- svn 능력자를 위한 git 개념 가이드
- 핸드스튜디오 사내강의 “Git+, Git 조금 더 배워보기”
- Git for beginner++
- 깃허브 시작하기
- Git/Github Beginner Part. 1
- An introduction to Git for absolute beginners
- A beginner’s guide to Git — how to start and create your first repository
- Git Tutorial for Beginners: A Quick Start Guide
- The beginner’s guide to Git & GitHub
- Git 뉴비를 위한 기초 사용법
- Git 뉴비를 위한 기초 사용법 - 버전 관리
- Getting Started With Version Control — Part II Working with Git & GitHub like a boss
- Git 쉽게 사용하기
- 누구나 쉽게 이해할 수 있는 Git 입문
- Building maintainable step-by-step tutorials with Git
- git-step
- Git 기반의 오픈소스 프로젝트 개발 실습
- GitHub에서 커뮤니티 기반 소프트웨어 프로젝트 빌드 - Learn | Microsoft Docs
- Git and GitHub Tutorial for Beginners - Analytics Vidhya
- Git and GitHub: The Complete Guides - Chapter 1 - DEV Community
- Git and GitHub: The Complete Guides - Chapter 1 (Extended) - DEV Community
- Git and Github: The Complete Guides - Chapter 2 - DEV Community
- Git and GitHub: The Complete Guides - Chapter 3 - DEV Community
- Git and GitHub: The Complete Guides - Chapter 4 - DEV Community
- Git 정리 #1 - 로컬 저장소 | Jungwoon Blog
- Git 정리 #2 - 원격 저장소 | Jungwoon Blog
- Git 정리 #3 - 브랜치 | Jungwoon Blog
- 10 Best Websites and Tutorials to learn Git for FREE - DEV Community
- 누구나 쉽게 이해할 수 있는 Git 입문
버전 관리를 완벽하게 이용해보자| Backlog - Git & Github Full Course | Part 1 | Introduction to Git | Git Tutorial For Beginners - YouTube
- Git for Network Engineers Series - The Basics Part 1 - Cisco Blogs
- 자, 이제부터 이 글을 보는 순간 Git이 쉬워집니다? - 원리로 알아보는 Git의 기초 | Dable Tech Blog
- .git으로 알아보는 git 동작원리 : 네이버 블로그
- Git basic