wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Git

Total questions: 32

Worksheet time: 23mins

Name
Class
Date
1.

Câu lệnh nào để khởi tạo 1 local git repo

a)

git add

b)

git commit

c)

git push

d)

git init

2.

Lệnh nào để thêm các file/folder từ working directory vào staging

a)

git commit

b)

git restore --cached

c)

git clone

d)

git add

3.

Kiểm tra trạng thái của local git repo bằng lệnh

a)

git status

b)

git check

c)

git checkout

d)

git fetch

4.

Kiểm tra trạng thái repo được kết quả như hình trên

Lệnh nào để add cả 2 file vào staging:

a)

git add

b)

git add react.js && vue.js

c)

git add .

d)

git add react.js vue.js

e)

git commit -m

5.

Cho 1 repo có trạng thái như trong hình

Lệnh nào để commit chỉ 1 file vue.js (không commit file react.js) vào local repo

a)

git commit -m "add vue"

b)

git add . && git commit -m "add vue"

c)

git add vue.js && git commit -m "add vue"

d)

git commit -am "add vue"

6.

Cho 1 local repo có trạng thái như trong hình

Lệnh nào để commit cả 2 file vào local repo

a)

git commit -m "add 2 files"

b)

git add react.js vue.js

c)

git add .

d)

git checkout -b test

e)

git init

7.

Cho 1 local repo có trạng thái như trong hình

Lệnh nào để commit chỉ 1 file react.js (không commit file vue.js) vào local repo

a)

git commit -m "add react"

b)

git add react.js && git commit -m "update react"

c)

git reset HEAD vue.js && git commit -m "add react"

d)

git add .

e)

git add . && git commit -m "add react"

8.

Lệnh nào để lưu nháp các thay đổi diễn ra ở working directory

a)

git log

b)

git stash list

c)

git stash save

d)

git stash save "lưu nháp"

e)

git stash pop

9.

Lệnh nào để tạo 1 nhánh mới có tên là demo

a)

git commit -m "demo"

b)

git branch demo

c)

git checkout demo

d)

git reset demo

e)

git checkout -b demo

10.

Cho 1 local git repo gồm các commit và nhánh như trong hình

Lệnh nào để xem nội dung của commit 87ba8bc

a)

git branch 87ba8bc

b)

git checkout 87ba8bc

c)

git merge 87ba8bc

d)

git fetch 87ba8bc

e)

git switch 87ba8bc

11.

Cho 1 local repo gồm các commit và nhánh như trong hình

Lệnh nào để tạo 1 nhánh mới có tên là demo trỏ đến commit số 43bd3ef

a)

git branch demo

b)

git checkout -b 43bd3ef

c)

git checkout 43bd3ef

d)

git checkout 43bd3ef && git branch demo

e)

git checkout -b demo

12.

Lệnh nào để liệt kê các nhánh

a)

git checkout

b)

git branch

c)

git show branch

d)

git ls branch

e)

git checkout -b

13.

Cho 1 repo như trong hình

Nếu thực hiện lệnh commit thì commit mới sẽ nằm ở nhánh nào

a)

master

b)

demo

c)

testing

d)

87ba8bc

14.

Lệnh nào để biết mình đang ở nhánh nào

a)

git branch

b)

git remote add origin

c)

git switch

d)

git status

e)

git checkout

15.

Lệnh nào để download 1 remote repo về máy

a)

git push

b)

git clone

c)

git commit

d)

git download

e)

git fetch

16.

Lệnh nào để lấy các commit từ remote repo về local repo nhưng chưa merge vào nhánh ở local

a)

git pull

b)

git push

c)

git fetch

d)

git merge

e)

git init

17.

Lệnh nào để đẩy code từ nhánh master ở local repo lên 1 remote repo có địa chỉ là: https://github.com/handuy/fetch-pull.git

a)

git remote add origin https://github.com/handuy/fetch-pull.git

b)

git pull origin master

c)

git push https://github.com/handuy/fetch-pull.git master

d)

git fetch origin master

e)

git remote add myrepo https://github.com/handuy/fetch-pull.git && git push myrepo master

18.

Lệnh nào để tích hợp code của nhánh dev vào nhánh master

a)

git checkout dev

b)

git merge master

c)

git checkout dev && git merge master

d)

git checkout master && git merge dev

e)

git checkout master

19.

Lệnh nào để rebase nhánh feature vào nhánh dev

a)

git checkout dev

b)

git checkout feature && git rebase dev

c)

git checkout dev && git rebase feature

d)

git checkout feature && git merge dev

20.

Lệnh nào dùng để thiết lập 1 tên thay thế có giá trị là myrepo cho 1 remote repo nằm ở địa chỉ https://github.com/handuy/fetch-pull.git

a)

git remote -v

b)

git remote show myrepo

c)

git remote remove myrepo

d)

git remote add myrepo https://github.com/handuy/fetch-pull.git

e)

git remote add myrepo

21.

Lệnh nào để đánh tag test_v1 cho commit số 43bd3ef

a)

git tag

b)

git tag 43bd3ef test_v1

c)

git tag -a test_v1

d)

git tag -a test_v1 43bd3ef -m "test version 1"

22.

Lệnh nào để xem danh sách các stash ?

a)

git stash save

b)

git stash ls

c)

git stash show

d)

git stash commit

e)

git stash list

23.

Cho 1 local repo như trong hình

Điều gì xảy ra khi chúng ta thực hiện lệnh: git branch demo

a)

Không có gì xảy ra

b)

Tạo 1 commit mới có hash ID là demo

c)

Tạo 1 nhánh mới có tên là demo trỏ đến commit c1c8bd4

d)

Tạo 1 nhánh mới có tên là demo trỏ đến commit d21be2c và chuyển sang nhánh demo

e)

Tạo 1 nhánh mới có tên là demo trỏ đến commit d21be2c

24.

Khác biệt giữa git fetch và git pull là:

a)

git fetch sẽ commit code vào local repo còn git pull sẽ thêm các file vào staging area

b)

git fetch đẩy code từ local repo lên remote repo còn git pull kéo code từ remote về local repo

c)

Không có gì khác biệt giữa 2 lệnh này

d)

git fetch lấy các commit từ remote repo về local repo nhưng chưa merge vào nhánh ở local, còn git pull sẽ lấy các commit từ remote về local đồng thời merge luôn vào nhánh ở local

25.

Mệnh đề nào sau đây không đúng

a)

Tên thay thế (alias) cho địa chỉ của remote repo bắt buộc phải là origin

b)

Để tạo nhánh ta dùng lệnh git branch <tên-nhánh>

c)

Lệnh git pull có thể gây ra conflict code ở working directory

d)

Khi sử dụng git rebase thì lịch sử commit được giữ nguyên

e)

1 commit có thể nằm trên nhiều branch

26.

Những lệnh nào có thể gây ra conflict code

a)

git commit

b)

git pull

c)

git merge

d)

git rebase

e)

git fetch

27.

Tác dụng của lệnh git stash pop ?

a)

Lấy nội dung stash cũ nhất đổ vào working directory

b)

Lưu nháp những thay đổi ở working directory vào stash

c)

Lấy nội dung stash mới nhất đổ vào working directory và xóa stash đó đi

d)

Liệt kê các stash

28.

Lệnh nào để đưa HEAD trỏ đến testing ?

a)

git fetch testing

b)

git branch testing

c)

git commit testing

d)

git checkout testing

e)

git push origin testing

29.

Lệnh nào giúp liệt kê tất cả các nhánh, gồm cả local lẫn remote branch

a)

git branch

b)

git remote -v

c)

git branch --all

d)

git checkout -b all

30.

Mệnh đề nào sau đây là đúng

a)

git checkout -b <branch> vừa tạo nhánh mới đồng thời chuyển luôn sang nhánh đó

b)

Một khi đã thực hiện git add vào khu vực staging thì không thể gỡ các file ra khỏi staging được

c)

git merge không làm thay đổi lịch sử commit còn git rebase thì có

d)

git rebase không gây ra conflict code

e)

Có thể git add nhiều file một lúc vào tầng staging

31.

Mệnh đề nào sau đây đúng

a)

git revert xóa các commit cũ

b)

bắt buộc phải thực hiện lệnh git remote add origin thì mới có thể push code lên remote repo

c)

git rebase làm thay đổi lịch sử commit

d)

git fetch lấy các commit từ remote repo về local repo và merge vào nhánh ở local

32.

Lệnh nào có tác dụng cập nhật con trỏ HEAD sang 1 commit mới

a)

git branch

b)

git checkout

c)

git push

d)

git add

e)

git status