Compare commits

..

8 Commits
pr2 ... main

  1. 2
      04/README.md
  2. 41
      04/git_instruction.md
  3. 3
      04/testfile
  4. 6
      05/README.md
  5. 43
      05/sh_instruction.md
  6. 15
      06/README.md
  7. 6
      README.md

@ -1,6 +1,6 @@
### Что здесь лежит? ### Что здесь лежит?
В файле [git instruction](./git_instruction.md) лежат В файле [git instruction](./git_instruction.md) лежат
инструкции что нужно проделать в качестве первичной практики инструкции, которые нужно проделать в качестве первичной практики
по **git**. по **git**.

@ -1,35 +1,44 @@
## Что делать? ## Что нужно сделать?
1. Зайти на сайт: cs-sh.xyz; 0. Зайти на сайт: [cs-sh.xyz].
2. Зарегистрироваться, если ещё не; 1. Зарегистрироваться, если ещё не.
3. Создать репозиторий, называть можно как угодно; 2. Создать репозиторий, называть можно как угодно.
4. Взять HTTPS ссылку к репозиторию (далее `<url>`); 3. Взять HTTPS ссылку к репозиторию (далее `<url>`).
4. Склонировать репозиторий к себе на машину по этой ссылке; 4. Склонировать репозиторий к себе на машину по этой ссылке:
```ssh ```ssh
git clone <url> git clone <url>
``` ```
5. Изменить файл `README.md`, наполнить каким-нибудь содержимым; 5. Открыть склонированный репозиторий как обычную директорию _любым_ привычным
способом:
- в терминале с помощью команды `cd`, `pwd` также может помочь;
- в Windows с помощью File Explorer, в других ОС -- с помощью его аналогов;
6. Создать коммит с **содержательным** сообщением; 6. Создать файл `README.md`, если он ещё не был создан.
Сначала добавляем файлы в Staging:
7. Изменить файл `README.md`, наполнить каким-нибудь содержимым.
8. Создать коммит с **содержательным** сообщением.
Для этого добавить файлы в Staging:
```ssh ```ssh
git add README.md git add README.md
``` ```
и коммитим: и создать коммит:
``` ```
# git commit -m "some mess" # git commit -m "some mess"
# лучше # лучше
git commit git commit
``` ```
7. Запушить содержимое ветки в ветку `main`; 9. Запушить содержимое ветки в ветку `main`.
```sh ```sh
git push origin main git push origin main
``` ```
8. "Отпочковать" новую ветку: 10. "Отпочковать" новую ветку:
``` ```
git checkout -b name_of_branch git checkout -b name_of_branch
``` ```
9. Изменить или добавить какие-нибудь файлы, создать коммит; 11. Изменить или добавить какие-нибудь файлы, создать коммит.
10. Запушить изменения на cs-sh.xyz в ветку `name_of_branch`; 12. Запушить изменения на [cs-sh.xyz] в **свой** (не в данный!) репозиторий в ветку `name_of_branch`.
11. Создать Pull Request (Запрос на слияние) в **СВОЙ** 13. Создать Pull Request (Запрос на слияние) в **СВОЙ** репозиторий.
репозиторий;
[cs-sh.xyz]: https://cs-sh.xyz

@ -1,6 +1,3 @@
1 1
2 2
3 3
4
5
6

@ -0,0 +1,6 @@
### Что здесь лежит?
В файле [sh instruction](./sh_instruction.md) лежат
инструкции, которые нужно проделать в качестве первичной практики
по **shell**.

@ -0,0 +1,43 @@
## Что делать?
1. Открыть терминал.
2. Открыть и полистать man-pages:
- `man`
- `pwd`
- `cd`
- `ls`
- `mkdir`
- `rm`
- `rmdir`
- `cat`
- `bash`
- `grep`
Что делать, если **no manual entry found**
```bash
$ sudo apt update
$ sudo apt install manpages-posix
```
3. Не забывайте, что `man` откроет пагинатор вроде `less` (или `most`, как у меня);
убедитесь, что понимаете как им пользоваться:
- вызовите помощь с помощью клавиши `h`;
- найдите какое-нибудь вхождение с помощью `/`,`?` и клавиш `n`/`N`;
- поймите как пролистывать целый экран/половину экрана вверх-вниз;
- выясните как перейти в начало/конец файла;
4. ознакомиться с утилитой `help`, начать можно с вызова `help` без аргументов,
далее -- повызывать `help` для различных встроенных команд, например,
`help set`.
5. Открыть `info coreutils`
Попробовать попользоваться:
- потыкать клавиши вниз-вверх;
- потыкать клавиши `[`,`]`,`p`,`n`;
- понять, какие действия они делают;
- научиться вызывать помощь;
Обязательно офигеть, закрыть, открыть info-страницы в браузере по ссылке с
cscwiki.

@ -0,0 +1,15 @@
### Что здесь лежит?
Только README.md, больше ничего
### Задания на практику
#### 1. Удваиватель
Написать команду, копирующую содержимое файла `data` в конец этого же файла.
Примечания:
* решение на полный балл не должно использовать временные файлы;
* файл может содержать бинарные данные;
* проверьте, что если изначальный размер файла был n байт, то размер результирующего файла -- 2 * n байт
* проверьте свое решение на больших (> 1 MB) файлах;

@ -16,8 +16,9 @@ $ cd 01
$ cat README.md $ cat README.md
``` ```
**(!)** Ссылка на wiki-страницу курса: [cs-sh.xyz/d/ompwiki]
**(!)** Не забывайте читать литературу: [список литературы на CSCWiki]. **(!)** Не забывайте читать литературу: [список литературы на CSCWiki]
**(!)** И пользоваться ресурсами: **(!)** И пользоваться ресурсами:
@ -25,6 +26,9 @@ $ cat README.md
[pythontutor]; [pythontutor];
* почитать объяснение shell-команды: [explain shell]; * почитать объяснение shell-команды: [explain shell];
[cs-sh.xyz/d/ompwiki]: https://cs-sh.xyz/d/ompwiki
[pythontutor]: https://pythontutor.com [pythontutor]: https://pythontutor.com
[explain shell]: https://explainshell.com/explain?cmd=find+.+-name+%27*.py%27+-printf+%22x%22+%7C+grep+-oc+x [explain shell]: https://explainshell.com/explain?cmd=find+.+-name+%27*.py%27+-printf+%22x%22+%7C+grep+-oc+x
[список литературы на CSCWiki]: https://wiki.compscicenter.ru/index.php/%D0%9E%D0%9C%D0%9F_1MIT_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_1_2022#.D0.9B.D0.B8.D1.82.D0.B5.D1.80.D0.B0.D1.82.D1.83.D1.80.D0.B0 [список литературы на CSCWiki]: https://wiki.compscicenter.ru/index.php/%D0%9E%D0%9C%D0%9F_1MIT_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_1_2022#.D0.9B.D0.B8.D1.82.D0.B5.D1.80.D0.B0.D1.82.D1.83.D1.80.D0.B0
!!!

Loading…
Cancel
Save