⭐⭐ firstaidgit - Коллекция часто задаваемых вопросов по Git с возможностью поиска
⭐⭐⭐ git - the simple guide - простое руководство по работе с git. Ничего сложного ;)
⭐⭐ Git How To - еще руководство
⭐ Resources to learn Git - от гитхаба
| /** | |
| * Definition for a binary tree node. | |
| * class TreeNode { | |
| * val: number | |
| * left: TreeNode | null | |
| * right: TreeNode | null | |
| * constructor(val?: number, left?: TreeNode | null, right?: TreeNode | null) { | |
| * this.val = (val===undefined ? 0 : val) | |
| * this.left = (left===undefined ? null : left) | |
| * this.right = (right===undefined ? null : right) |
⭐⭐ firstaidgit - Коллекция часто задаваемых вопросов по Git с возможностью поиска
⭐⭐⭐ git - the simple guide - простое руководство по работе с git. Ничего сложного ;)
⭐⭐ Git How To - еще руководство
⭐ Resources to learn Git - от гитхаба
⭐⭐⭐ React + TypeScript Cheatsheets – mustread
⭐⭐⭐ Utility-types – библиотека ts утилит
| #!/bin/bash | |
| # This way you can customize which branches should be skipped when | |
| # prepending commit message. | |
| if [ -z "$BRANCHES_TO_SKIP" ]; then | |
| BRANCHES_TO_SKIP=(master develop test) | |
| fi | |
| BRANCH_NAME=$(git symbolic-ref --short HEAD) | |
| BRANCH_NAME="${BRANCH_NAME##*/}" |
| javascript:(function(){ | |
| function findByText(text) { | |
| let resources = {}; | |
| const allItems = Array.prototype.slice.call(document.querySelectorAll('.resource .endpoint .operation .heading .path a')); | |
| const items = allItems.filter((item) => { | |
| return item.textContent.indexOf(text) >= 0; | |
| }); | |
| items.forEach((item) => { | |
| const resource = item.closest('.resource'); |
| <button class="kebab-wrap" type="button"> | |
| <span class="kebab"></span> | |
| </button> | |
| <script type="text/javascript"> | |
| var btn = document.querySelector('.kebab-wrap'); | |
| var kebab = btn.querySelector('.kebab'); | |
| btn.addEventListener('click', function(ev) { | |
| ev.preventDefault(); | |
| kebab.classList.toggle('active'); |
| <html> | |
| <body> | |
| <?php | |
| if (isset($_REQUEST['from'])) { //if "email" is filled out, send email | |
| //send email | |
| $from = $_REQUEST['from'] ; | |
| $toemail = $_REQUEST['toemail'] ; | |
| $subject = $_REQUEST['subject'] ; | |
| $message = $_REQUEST['message'] ; |
| <?php | |
| $FORM_EMAIL = "info@foo.bar"; // recepient | |
| $FORM_EMAIL_FROM = "baz@foo.bar"; // sender | |
| $SITE_NAME = "foo.bar"; | |
| $EMPTY_FIELD_TEXT = " field is not filled"; | |
| $SUCCESS_TEXT = "Message successfully sent."; | |
| $FAIL_TEXT = "Failed to send message"; | |
| $FORM_WAS_SUBMITTED_FROM = "Form was filled on "; |
Cистема общения в пул реквестах:
Комментируем построчно в files changed, общаемся в conversation https://monosnap.com/file/fqP1MB5ZINTuFvfNQ9Ai0nNqOPyqwj
Ученик, пофиксив правку, может поставить реакцию, например 👍.Так он сигнулизирует, что можно проверять https://monosnap.com/file/qUlpAYqHVQdRmengC3Jm43d9x1agzk
Когда вновь просматриваем ПР, открываем старые комментарии. Если все ок, ставим под ним реакцию 🎉 (договоритесь с учеником, что эту реакцию ставит только наставник). https://monosnap.com/file/aOvqYiyY6w1GNXEYPYwBmY4ggWXJyi