Thứ Hai, 14 tháng 11, 2016

Sổ tay Git

Sổ tay Git

Đây là một hướng dẫn đơn giản cho người mới học ;)
cài đặt

Tạo một repository mới

Để tạo 1 repository mới, bạn hãy mở cửa sổ lệnh và gõ dòng lệnh sau
git init

sao chép (clone) một repository

để clone 1 repository có sẵn ở trên máy cục bộ, bạn hãy sử dụng dòng lệnh sau:
git clone /đường-dẫn-đến/repository/
Nếu repository đó ở máy chủ khác thì bạn hãy gõ dòng lệnh sau:
git clone tênusername@địachỉmáychủ:/đường-dẫn-đến/repository

quy trình làm việc

thư mục cục bộ của bạn bao gồm ba "trees" được duy trì bởi git. đầu tiên là Thư Mục Đang Làm Việc (Working Directory) có chứa các tập tin hiện tại. cái thứ hai là Chỉ Mục (Index) đóng vai trò như staging area và cuối cùng là HEAD trỏ đến commit gần đây nhất của bạn.

thêm (add) & commit

Bạn có thể đề xuất thay đổi (thêm nó vào chỉ mục Index) bằng cách
git add <tên-tập-tin>
git add *
Đây là bước đầu tiên trong quy trình git cơ bản. Để thật sự commit những thay đổi, bạn sử dụng
git commit -m "Ghi chú Commit"
Bây giờ thì tập tin đã được commit đến HEAD, nhưng chưa phải trên thư mục remote.

đẩy (push) các thay đổi

Thay đổi của bạn hiện đang nằm tại HEAD của bản sao cục bộ đang làm việc. Để gửi những thay đổi đó đến repository remote, bạn thực thi
git push origin master
Thay đổi master bằng bất cứ nhánh nào mà bạn muốn đầy những thay đổi đến.

Nếu bạn chưa clone một repository hiện có và muốn kết nối repository của bạn đến máy chủ remote, bạn phải thêm nó với
git remote add origin <máy-chủ>
Bây giờ bạn đã có thể đẩy các thay đổi của mình vào máy chủ đã chọn

nhánh

Các nhánh (branches) được dùng để phát triển tính năng tách riêng ra từ những nhánh khác. Nhánh master là nhánh "mặc định" khi bạn tạo một repository. Sử dụng các nhánh khác tri đang trong giai đoạn phát triển và merge trở lại nhánh master một khi đã hoàn tất.

tạo một nhánh mới và đặt tên là "feature_x" và chuyển qua nhánh đó (từ master) bằng cách
git checkout -b feature_x
trở lại nhánh master
git checkout master
và xóa nhánh feature_x đó lần nửa
git branch -d feature_x
một nhánh không có giá trị với các nhánh khác trừ khi bạn đẩy nhánh đó đến remote repository
git push origin <nhánh>

cập nhật & trộn (update & merge)

để cập nhật repository cục bộ của bạn và commit mới nhất, thực thi
git pull
trong thự mục đang làm việc để lấy về (fetch)trộn (merge) các thay đổi ở remote.
để trộn một nhánh khác vào nhánh đang hoạt động (vd: master), sử dụng
git merge <nhánh>
trong cả hai trường hợp, git cố gắng trộn tự động (auto-merge) các thay đổi. Không may, điều này không phải lúc nào cũng làm được và thường dẫn đến xung đột. Trách nhiệm của bạn là trộn các xung đột đó thủ công bằng cách chỉnh sửa các tập tin được hiển thị bởi git. Sau khi thay đổi, bạn phải đánh dấu chúng là đã được trộn (merged) với lệnh
git add <tên-tập-tin>
trước khi trộn các thay đổi, bạn có thể xem trước chúng bằng các
git diff <nhánh_nguồn> <nhánh_mục_tiêu>

gắn nhãn (tagging)

người ta khuyên nên tạo nhãn (tags) khi phát hành phần mềm. đây là khái niệm được biết đến, đã từng có trên SVN. Bạn tạo tag mới tên là 1.0.0 bằng cách
git tag 1.0.0 1b2e1d63ff
chuỗi 1b2e1d63ff là 10 ký tự đầu tiên của mã commit (commit id) mà bạn muốn tham chiếu đến bằng nhãn của bạn. Bạn có thể lấy mã commit với lệnh
git log
bạn cũng có thể sử dụng ít ký tự hơn từ mã commit, nó chỉ cần phải là duy nhất.

thay thế các thay đổi cục bộ

Trong trường hợp bạn làm sai điều gì đó, bạn có thể thay thế các thay đổi cục bộ bằng lệnh
git checkout -- <tên-tập-tin>
lệnh này thay thế những thay đổi trong "tree" đang làm việc với nội dung mới nhất của HEAD. Các thay đổi đã được thêm vào chỉ mục, kể cả các tập tin mới, điều này sẽ được giữ lại.
Nếu bạn muốn hủy tất cả thay đổi và commit cục bộ, lấy về (fetch) lịch sử gần đây nhất từ máy chủ và trỏ nhánh master cục bộ vào nó như sau
git fetch origin
git reset --hard origin/master

các gợi ý hữu ích

git GUI tích hợp sẵn
gitk
sử dụng kết quả git với nhiều màu
git config color.ui true
hiện log trên chỉ một dùng mỗi commit
git config format.pretty oneline
sử dụng thêm tập tin tương tác
git add -i

Thứ Ba, 1 tháng 11, 2016

Lesson 2: Text in QML

Thứ Sáu, 28 tháng 10, 2016

Các phím tắt, mẹo và thủ thuật trên Android studio - Tips and Cheaps Android studio

Mở nhanh

Mở Class: Ctrl + N
Mở File: Ctrl + Shift + N
Mở Task: Alt + Shift + N

Di chuyển

Đến vị trí con trỏ cũ: Ctrl + Alt + Left/Right (làm gì xong về chỗ cũ)
Đến vị trí chỉnh sửa cũ: Ctrl + Shift + backspace
Android Studio Logo
Đến biến khai báo: Ctrl + B = Ctrl + Click
Trích: http://www.developerphil.com/android-studio-tips-tricks-moving-around/

Highlight Code: ctrl+shift+f7 (Hủy =esc)

Android Studio Logo

Chuyển con trỏ đến Methods, Inner Classes khác: alt+up/down

Android Studio Logo

Mở File Structure nhanh: Ctrl + F12

Android Studio Logo

Xem cấp bậc Method (The Call Hierarchy Popup): ctrl+alt+h

Android Studio Logo

Xem định nghĩa nhanh: ctrl+shift+iAndroid Studio Logo

Đóng hiện Nhóm code: ctrl+shift+plus/minus

Android Studio Logo

Bookmarks!

Toggle Bookmark: F11

Toggle Bookmark With Mnemonic: ctrl+f11

Nếu bookmark có số: ctrl+number

Show Bookmarks shift+f11

Android Studio Logo

Tìm Hành động trong menu: ctrl+shift+a

Android Studio Logo

Chuyển dòng lên xuống: alt+shift+up/down

Android Studio Logo

Xóa dòng: ctrl+y

Android Studio Logo

trích: http://www.developerphil.com/android-studio-tips-of-the-day-roundup-1/

Nhân đôi dòng (Duplicate): ctrl+d

Android Studio Logo

Tăng, Giảm vùng chọn: ctrl+w / ctrl+shift+w

Android Studio Logo

Rào (surround) hàm (thêm if, ...): ctrl+alt+t

Android Studio Logo

Mở File gần đây: Ctrl + E, Ctrl + Tab

Android Studio Logo

Di chuyển Method: ctrl+shift+up/down

Android Studio Logo

Hoàn thành Method, code nhanh, khỏi chuyển xuống cuối: ctrl+shift+enter

Android Studio Logo

Kết hợp dòng: ctrl+shift+j

Android Studio Logo

Chọn Nhanh vị trí trong (Structure, file..., bar): alt+f1

Android Studio Logo

Unwrap/Remove: ctrl+shift+delete

Android Studio Logo

Toggle Breakpoints: Ctrl+F8

Expand Shrink Selection

Đổi biến khi Debug: Right Click Breakpoint

Expand Shrink Selection

Tạo Log Debug: Nhấp Phải Breakpoint

Logging Breakpoints

Tạo Breakpoint Tạm: Ctrl+Alt+Shift+F8 = Alt+Left Click in the left gutter

Temporary Breakpoints

Ẩn Breakpoint: Alt+Left Click on an existing breakpoint in the left gutter

Expand Shrink Selection

Đính kèm hàm khi Debug: Build / Attach to Android Process

Attach Debugger

Xem Biến nhanh qua cửa sổ (Evaluate Expression): Alt+F8

Evaluate Expression

Xem giá trị biến (Inspect Variable): Alt+Left Click biến

Inspect Variable

Mark Object: right-click and select “Mark Object”

Mark Object

Phân tích dữ liệu tại chỗ: Menu: Analyze → Analyze Data Flow to Here

Analyze Data flow to Here

Chọn nhiều, thay đổi nhiều dòng cùng lúc: Alt+J

Sublime Text Multi Selection

Chọn nhiều Cột: Alt+MouseDrag = Shift+Alt+Insert

Column Selection

Postfix Completion:

gợi ý từ khóa:

  • .for (for a foreach)
  • .format (wraps a string in String.format())
  • .cast (wraps a statement in a type cast)

Postfix Completion

So sánh với Clipboard: right-click the selection and select Compare With Clipboard

Find action: compare with clipboard

Compare With Clipboard

VCS Operation Popup: Alt+`

VCS Operations Popup

Compare With Branch (Git):

  • Menu (for git): VCS -> Git -> Compare With Branch
  • Find Actions: Compare With Branch
Compare With Branch (Git)
Trích: http://www.developerphil.com/android-studio-tips-of-the-day-roundup-4/

Enter vs Tab for Code Completion: enter or tab

Enter vs Tab for Code Completion

  • Return and keep panel open: Escape
  • Close panel and Return: Shift+Escape
Return to the Editor

Jump to Last Tool Window (F12)

Jump to Last Tool Window

Hide All Panels (Ẩn mọi Panels): Ctrl+Shift+F12

Hide All Panels

Thông tin tham số trong Hàm (Parameter Info): Ctrl+P

Parameter Info

Đổi Tab nhanh: Ctrl+Tab

The Switcher

Thông tin hàm: Ctrl+Shift+Q, Ctrl + Q

Context Info

Trích: http://www.developerphil.com/android-studio-tips-of-the-day-roundup-5/

Refactor This: Ctrl+Alt+Shift+T

Refactor This

Mở file Liên quan (Related File): Ctrl+Cmd+Up

Related File

Extract Variable: Ctrl+Alt+V

Extract Variable

Extract Parameter: Ctrl+Alt+P

Extract Parameter

Extract Method: Ctrl+Alt+M

Extract Method

Gom dòng (Inline): Ctrl+Alt+M

Inline

Đổi tên: Shift+F6

Rename

Pull Up / Push Down: Ctrl+Alt+Shift+T and choose pull members up / push members down

Pull Up / Push Down

Trích: http://www.developerphil.com/android-studio-tips-of-the-day-roundup-6/