How do I clone a subdirectory only of a Git repository?

In this example, I will checkout crm from react-admin/examples/crm folder in react-admin repository. The steps to do a sparse clone are as follows

mkdir admin-crm
cd admin-crm
git init
git remote add -f origin https://github.com/marmelab/react-admin.git


This creates an empty repository with your remote, and fetches all objects but doesn’t check them out. Then do:

git config core.sparseCheckout true

Now you need to define which files/folders you want to actually check out. This is done by listing them in .git/info/sparse-checkout, eg:

echo "examples/crm" >> .git/info/sparse-checkout
# echo "another/sub/tree" >> .git/info/sparse-checkout

Last but not least, update your empty repo with the state from the remote:

git pull origin master

You will now have files “checked out” for examples/crm on your file system (with those paths still), and no other paths present.

Sách

Từ hối có Bin bố ko còn nhiều thời gian đọc sách. Thực ra trước cũng lười, nhưng lúc đi học trở lại cũng đọc dc thêm mấy quyển. Và rồi dành nhiều thời gian bế Bin thì bố chuyển sang nghe audiobook. Cả năm vừa rồi bố cũng nghe dc kha khá các quyển về lịch sử, về con người, một số tác phẩm kinh điển của văn học VN và nước ngoài.

Hôm nay lại nghe lại nhà giả kim, đúng là Nhà giả kim có một cái gì đó rất đặc biệt. Lần này nghe lại tại suy nghĩ đôi điều. Thực sự thì mình muốn gì, giấc mơ của mình là gì, mình có cố gắng đi về phía mình mong muốn. Nếu thực sự mong muốn điều gì, cả vũ trụ này sẽ giúp ta thực hiện mong muốn của mình. Thực vậy ư…

Nếu đặt câu hỏi thực sự đúng, đúng câu hỏi thì mình sẽ nhận được câu trả lời, thực ra đó chính là câu trả lời từ trong thâm tâm của mình. Còn nếu ko có câu trả lời thì câu hỏi mình đưa ra chưa đủ rõ.

Nghe rất đơn giản, cũng như W. Buffett nói, nguyên tắc 1 là ko dc để mất tiền, nguyên tắc số 2 là luôn ghi nhớ nguyên tắc số 1. Những người chưa biết về ông thì nghĩ nó vớ vẩn, kiểu ông giàu ông nói gì chẳng đúng. Nhưng khi được biết về ông (qua cuốn sách về ông – quá trình hình thành nhà tư bản Mỹ) thì mình mới thấy rằng, ông nói đúng là ông làm đúng như vậy, nói một cách khác, W. Buffett ko khoanh tay đứng nhìn khoản đầu tư của mình thua lỗ, ông sẽ làm những việc cần làm để đảm bảo dc nguyên tắc số 1 của mình – đó cũng chính là nguyên tắc số 2 của ông.

Người bán kem gợi lên cho mình suy nghĩ về bản thân của vài năm về trước, muốn đi đây đi đó nhưng ko thực hiện mà nghĩ rằng đợi một lúc nào đó …

Người bán pha gợi lên bản thân của hiện tại, biết rằng cuộc sống phải kéo theo nhiều mối lo, sợ rằng giấc mơ thành hiện thực thì nó lại ko được như mình mong muốn.

Nếu mình ko code thì bug chắc chắn ko dc fix, và càng lâu thì mình sẽ càng stress trong đống bug của mình.

Giấc mơ tới miền đất lá phong đỏ xa xôi, tận hưởng bầu trời trong xanh, sống trong ngôi nhà ấm áp ánh đèn vàng bên ngoài tuyết bay bay, ánh mặt trời tà tà phía chân trời,..

Nó phải được bắt đầu. IELTS, học thạc sĩ, công việc 4k5.

Download YouTube playlist a set of MP3s

Requirements

python3 -m pip install pytube
sudo apt-get install rename

Script

Save the following lines as a file, eg pytubemp3.py. Don’t forget to set your own playlists

from pytube import Playlist

links = ["https://www.youtube.com/watch?v=vvvvv&list=xxxxxxx",
         "https://www.youtube.com/watch?v=vvvvv&list=xxxxxxx"]

for link in links:
    playlist = Playlist("https://youtube.com/playlist?" + link.split("&")[1])
    for video in playlist.videos:
        print("Downloading: ", video.title,"from", video.watch_url)
        video.streams.filter(only_audio=True).first().download()

Make sure your script is formatted with indents as the image below:

Then run:

  1. python pytubemp3.py . This step save the audio of youtube video as mp4 file.
  2. rename "s/mp4$/mp3/" *.mp4. This step replace the suffix mp4 with mp3

Linux: Access directly to the shell in case of boot failure

Why

Sometimes, we mess up with Ubuntu (for example), then we are not able to boot to the graphical user interfaces. We may fix the issue with the command line, but we cannot access the command line because of failures during boot time.

In this case, we can edit the grub boot option, to access the shell. Then we made changes, then reboot.

With this trick, we can even reset the root password without remembering the current password.

How

When the grub shows the menu of operating systems to boot, press e to edit the menu of current entry.

Find the line that contains linux... vmlinux ... ro. We need to:

  1. ro => rw Any change has to be writen to the system.
  2. add init=/bin/sh
  3. Press Ctrl + X to boot

That’s it. If you know this trick, you are probably know how to fix your own issue.

I guess anyone who jumps into this post via search engine just doesn’t remember the exact parameter, but they know how already. Please comment if this post help you 🙂

InRelease’ changed its ‘Suite’ value from ‘testing’ to ‘stable’: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.

If someone gets it as well then the solution is relatively simple. Run apt-get --allow-releaseinfo-change update

Before

x@pi-server-02  /etc/apt  sudo apt-get update
Hit:1 https://download.docker.com/linux/raspbian bullseye InRelease
Hit:2 https://deb.nodesource.com/node_10.x bullseye InRelease
Get:3 http://raspbian.raspberrypi.org/raspbian bullseye InRelease [15.0 kB]
Reading package lists… Done
E: Repository 'http://raspbian.raspberrypi.org/raspbian bullseye InRelease' changed its 'Suite' value from 'testing' to 'stable'
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.

After

x@pi-server-02  /etc/apt  sudo apt-get --allow-releaseinfo-change update
Hit:1 https://download.docker.com/linux/raspbian bullseye InRelease
Hit:2 https://deb.nodesource.com/node_10.x bullseye InRelease                    
Get:3 http://raspbian.raspberrypi.org/raspbian bullseye InRelease [15.0 kB]      
Get:4 http://raspbian.raspberrypi.org/raspbian bullseye/main armhf Packages [13.2 MB]
Get:5 http://raspbian.raspberrypi.org/raspbian bullseye/contrib armhf Packages [60.2 kB]                                                                                                                            
Get:6 http://raspbian.raspberrypi.org/raspbian bullseye/non-free armhf Packages [106 kB]                                                                                                                            
Get:7 http://raspbian.raspberrypi.org/raspbian bullseye/rpi armhf Packages [1360 B]                                                                                                                                 
Fetched 13.4 MB in 22s (621 kB/s)                                                                                                                                                                                   
Reading package lists... Done
N: Repository 'http://raspbian.raspberrypi.org/raspbian bullseye InRelease' changed its 'Suite' value from 'testing' to 'stable'

x@pi-server-02  /etc/apt  sudo apt-get update                           
Hit:1 https://deb.nodesource.com/node_10.x bullseye InRelease
Hit:2 https://download.docker.com/linux/raspbian bullseye InRelease                                           
Hit:3 http://raspbian.raspberrypi.org/raspbian bullseye InRelease                                             
Reading package lists... Done

Chế độ thai sản dành cho người chồng khi vợ sinh em bé

  1. Thời gian nghỉ việc hưởng chế độ: NLĐ Nam nghỉ hưởng chế độ trong vòng 30 ngày kể từ ngày vợ sinh con.
  • 05 ngày làm việc với sinh thường 1 con.
  • 07 ngày làm việc khi vợ sinh con phải phẫu thuật hoặc sinh con dưới 32 tuần tuổi.

Note: Thời gian hưởng chế độ không tính ngày lễ, tết, nghỉ hàng tuần.

  1. Hồ sơ gồm có: 
  • Bản sao công chứng giấy chứng sinh/khai sinh/trích lục khai sinh có họ tên cha
  • Giấy xác nhận của cơ sở y tế trong trường hợp sinh con dưới 32 tuần tuổi hoặc sinh con phải phẫu thuật (nếu có)
  • Số CMND/CCCD và mã số BHXH của vợ
  1. Thời hạn nộp hồ sơ:  Trong thời hạn 45 ngày, kể từ ngày trở lại làm việc NLĐ cần nộp lại hồ sơ cho Công ty
  1. Mức hưởng = Bình quân mức lương đóng BHXH 6 tháng trước khi vợ sinh/ 24 ngày  x 100% x số ngày được nghỉ.
  1. NLĐ Nam có thể hưởng trợ cấp 1 lần khi vợ không tham gia bảo hiểm khi
  • Vợ không đủ điều kiện hưởng chế độ thai sản (không đóng hoặc đóng không đủ điều kiện hưởng)
  • NLĐ Nam phải đóng BHXH từ đủ 06 tháng trở lên trong thời gian 12 tháng trước khi vợ sinh.

Domain, Hosting, VPS, Windows VPS

Coi mạng internet giống như một cái bản đồ, nhà bạn ở chỗ nào đó trên bản đồ (iinternet), Để xem phim bạn cần sang nhà Netflix. Xem thông tin về các bạn của bạn? bạn cần sang nhà Facebook để kiếm thông tin. Cũng như latitude và longitude trên bản đồ, IP cũng là một chuỗi loằng ngoằng (dù có quy tắc thì vẫn) khó nhớ!

Continue reading “Domain, Hosting, VPS, Windows VPS”