Git의 rebase --interactive (또는 간단히 rebase -i) 기능은브랜치의 커밋 히스토리를 재정렬하거나 수정할 수 있는 강력한 도구입니다. 이를 통해 커밋을 수정, 삭제, 합치기, 분할하거나 순서를 바꿀 수 있습니다. 주요 명령어는 6가지 pick: 커밋을 그대로 유지합니다.reword: 커밋 메시지를 수정합니다.edit: 커밋을 수정합니다. 이를 선택하면 해당 커밋에서 작업을 멈추고 수정할 수 있습니다.squash: 이전 커밋과 합칩니다. 두 커밋의 메시지를 병합할 수 있습니다.fixup: 이전 커밋과 합치되, 커밋 메시지는 유지하지 않습니다.drop: 커밋을 삭제합니다 [ Fork ]GUI 툴인 Fork 로 실습을 해보겠습니다.pick 은 유지이기 때문에 실습에서 제외..
[ 브랜치 목록 조회 ] master에서 develop, feature1, feature2 브랜치를 만들고 feature2 브랜치만 빼고 원격에 올려준 상태에서 진행하겠습니다. 1. local 브랜치 목록 조회 (with no flag) git branch 2. remote 브랜치 목록 조회 (with remote flag) git branch -r 3. 모든 브랜치(로컬 + 원격) 목록 조회 (with all flag) git branch -a [ 머지된 브랜치 목록 조회 ] feature1을 develop에 머지한 상황입니다. develop에 머지된 브랜치 목록을 조회할 때 git branch --merged develop feature2에 머지된 브랜치 목록을 조회할 때 git branch --me..
[1] Gitignore 파일 만들기 touch .gitignore [2] gitignore에 내용 입력 github.com/github/gitignore 여기서 각 환경에 맞는 코드를 복붙해서 위에서 만든 gitignore파일에 복붙해주면 된다. Xcode.gitignore랑 Swift.gitignore이 따로 있지만 Swift.gitignore에는 Xcode.gitignore 내용도 들어있기때문에 Swift.gitignore만 복붙해주면 된다. (참고로 python.gitignore에도 장고 관련 내용들이 들어가있다.) www.toptal.com/developers/gitignore 이 사이트에 들어가서 gitignore 내용을 구해도 된다. [3] 2번의 내용이외에 내가 무시할 것을 설정할때 git..
이 글은 2017, 2018년 블록체인 학회 활동때 공부한 것을 옮긴 글로 지금은 업데이트된 부분이 있을 수 있으니 유의해주세요. 또한 사진의 출처를 명시하지 못한 점 정말 죄송합니다. (옛날 발표자료에서 가져온 사진인데 출처가 표기안되어있네요ㅠㅠㅠ) [1] Dapp 이란? 이더리움 플랫폼위에 돌아가는 decentralized web application을 Dapp이라고 합니다. 여기서 핵심은 탈중앙화된 애플리케이션이라는 점입니다. 대표적인 DApp으로 크립토키티, MaidSafe가 있습니다. (2017 기준) [2] Dapp 구조 그럼 Dapp은 어떻게 동작하는 것일까요?!? 우선 기존 웹앱과 어떻게 다른지 비교를 위해 Web app 부터 살펴보겠습니다. 1) Web App 기존 웹 애플리케이션은 클라..
이 글은 2017, 2018년 블록체인 학회 활동때 공부한 것을 옮긴 글로 지금은 업데이트된 부분이 있을 수 있으니 유의해주세요. [1] 블록체인이란? 블록체인이란 무엇일까요?! 말그대로 블록 + 체인 입니다. 아래 그림처럼 여러 블록들이 이어져서 만들어진 블록의 집합체를 블록체인이라고 부릅니다. 블록은 쉽게 말하면 유효한 거래정보의 묶음 이라고 할 수 있습니다. 아래에서 블록안에 어떤 것들이 있는 지 살펴보겠습니다. [2] 블록의 구조 블록의 구조를 살펴봅시다. 1) 블록해쉬 우선 블록해쉬는 블록의 식별자 역할을 합니다. 이름은 블록 해쉬이지만 그 값은 블록 전체를 해쉬한 값이 아니라, 블록 헤더를 해쉬한 값입니다. 좀 더 구체적으로 말하면 , 블록 해쉬는 6가지의 블록 헤더 정보를 입력값으로 하고, ..
이 글은 고려대학교 김현철교수님의 인공지능 수업 (2016년) 강의자료를 토대로 하고 있습니다. 너무 좋은 강의여서 프린트물을 아직도 간직하고 있었는데, 다시 정리도 하고 프린트물을 보내주려고 글을 적습니다. 혹시 문제가 된다면 말씀해주세요 [1] 머신러닝 등장 배경 1) 지식 기반 방식 (expert system) 전문가의 지식을 추출해서 모델을 만드는 방식 입니다. 이 방식의 한계는 무엇일까요?! - incomplete - inconsistent - fuzzy (애매한, 불분명한) 오직 전문가의 경험에만 의존하고 전문가가 경험한 데이터 양도 적기 때문에 신뢰성이 떨어집니다. 2) 데이터 기반 방식 데이터로부터 지식을 추출해서 모델을 만드는 방식입니다. 이 방식에는 품질 좋고 많은 데이터가 꼭 있어야하..
모바일 개발자를 위한 머신러닝 https://firebase.google.com/products/ml-kit/?authuser=0 Firebase ML Kit를 사용하면 숙련된 머신러닝 개발자든 이제 막 시작한 초보자든 관계없이 강력한 머신러닝 기능을 Android용 또는 iOS용 앱에 도입할 수 있습니다. firebase.google.com ML Kit는 기기별 API 와 Cloud API가 있다. 기기별 API는 데이터를 빠르게 처리하고, 네트워크 연결 없이 작동하며, 클라우드 기반 API는 Google Cloud Platform의 강력한 머신러닝 기술을 활용하여 보다 높은 정확도를 제공한다고 한다..! 그리고 커스텀 모델도 사용할 수 있다...!!! >__
Remote 저장소를 local 저장소로 강제화(?) 시켜주고 싶을 때 다음 명령어를 사용합니다 저는 소스트리에서 reset 명령어로 local 저장소를 원하는 커밋까지 초기화시켜준후 이 명렁어를 통해 remote저장소도 local 저장소와 같아지게끔 강제 푸쉬시켰습니다 (협업하는 경우, 굉장히 위험한 명령어가 될 수 있습니다. 저는 예제용 개인프로젝트라서 진행해줬습니다) 참고 https://www.christianengvall.se/git-reset-origin-master-to-commit/ https://velog.io/@leehaeun0/실무에서-유용했던-git-명령어-4w0oxm3e
로그인도 Auth의 signIn 함수면 간단히 끝 -! FirebaseManager에 다음메소드를 추가하고 class func login(email: String, password: String, completion: @escaping (Result) -> Void) { Auth.auth().signIn(withEmail: email, password: password) { (result, error) in if let result = result { completion(.success(result)) } else if let error = error { completion(.failure(error)) } } } LoginViewModel도 구현해준다 struct LoginViewModel { stru..
회원가입은 Auth의 createUser라는 함수만 불러주면 쉽게 할 수 있다 FirebaseManager에 signup 메소드를 추가해준다 extension FirebaseManager { class func signup(email: String, password: String, completion: @escaping (Result) -> Void) { Auth.auth().createUser(withEmail: email, password: password) { (result, error) in if let result = result { completion(.success(result)) } else if let error = error { completion(.failure(error)) } } ..
- Total
- Today
- Yesterday
- cocoapod
- 장고 Custom Management Command
- Dart Factory
- DRF APIException
- Django FCM
- PencilKit
- ribs
- Watch App for iOS App vs Watch App
- 플러터 싱글톤
- flutter dynamic link
- 장고 URL querystring
- Sketch 누끼
- flutter 앱 출시
- SerializerMethodField
- 플러터 얼럿
- Django Firebase Cloud Messaging
- Flutter 로딩
- Flutter Clipboard
- ipad multitasking
- 구글 Geocoding API
- flutter deep link
- drf custom error
- flutter build mode
- Python Type Hint
- Flutter Text Gradient
- METAL
- github actions
- Flutter Spacer
- Django Heroku Scheduler
- Flutter getter setter
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |