码农的自我修养之必备技能 学习笔记

Typing

•https://www.typingclub.com
• 共684关,可以直接进⼊684关测评
•https://www.typingclub.com/sportal/program-3/8832.play (请在电脑端打开⽹址测评)
• 测评通过的标准:准确率100%,速度>50WPM
• 测评未通过的需要完成1-684关的循序渐进的训练过程
 

Visual Studio Code

Visual Studio Code(以下简称vscode)是⼀个轻量且强⼤的代码编辑器,⽀持Windows,OS X和Linux。内置JavaScript、TypeScript和Node.js⽀持,⽽且拥有丰富的插件⽣态系统,可通过安装插件来⽀持C++、C#、Python、PHP等其他语⾔。
•https://code.visualstudio.com/#alt-downloads
•sudo apt install ./<fifile>.deb

 基本配置

•Ctrl+Shift+P 输⼊dispaly 选择”配置显示语⾔Confifigure Display Language,安装简体中⽂并选择 zh-ch
• 帮助-欢迎使⽤-⼯具和语⾔,根据您所使⽤的语⾔安装相应的⼯具,我们默认安装C/C++
• 设置和按键绑定,我们默认安装Vim
• 颜⾊主题,我们默认选择Dark+
 

简单使⽤

• 打开⽂件夹( Ctrl/⌘+O)和关闭⽂件夹⼯作区( Ctrl/⌘+K F)
• 新建⽂件(Ctrl/⌘+N)、关闭⽂件(Ctrl/⌘+W)、编辑⽂件和保存⽂件(Ctrl/⌘+S)
• 搜索(Ctrl/⌘+F)
• 选中某个⽂件编辑器(Ctrl+1、2、3…)
 

⽆⿏标操作

•VSCode Keyboard shortcuts for Windows
•https://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf
•Keyboard shortcuts for macOS
•https://code.visualstudio.com/shortcuts/keyboard-shortcuts-macos.pdf
 

 

 

 

Git

• 独⽴⽂件⽅式,⽐如另存为

• 补丁⽅式,⽐如diff

• 中⼼版本控制系统,⽐如Concurrent Versions System/cvs和 Subversion/svn

• 分布式版本控制系统,⽐如Git,是⽬前世界上最先进的分布式版本控 制系统(没有之⼀)

 

 

 

 • 对于本地Repo,可能有多个branch,⾄少有⼀个叫master

• 本地Repo中的branch与⼀个或多个远程Repo中的branch存在跟踪关系

 

Git本地版本库的基本⽤法

• git init # 初始化⼀个本地版本库

• git status # 查看当前workspace的状态

• git add [FILES] # 把⽂件添加到index • git commit -m "wrote a commit log infro” # 把⽂件提交到仓库

• git log # 查看commit的⽇志,查看当前HEAD之前的commit,可以回到过去

• git reset —hard HEAD^^/HEAD~100/commit-id/commit-id的头⼏个字符 • git reflog # 可以查看当前HEAD之后的commit,可以回到未来

• git reset —hard commit-id/commit-id的头⼏个字符

 

Git远程版本库的基本⽤法

• git clone https://github.com/YOUR_NAME/REPO_NAME.git # 通过clone远端的版本 库从⽽在本地创建⼀个版本库,需要您先在github.com上注册账号并创建⼀个版本库

• git add / git commit / git reset —hard / git log等本地repo的操作

• 这⾥使⽤默认远程origin/master和本地master,没有创建其他分⽀

• git remote -v # 查看远程库信息

• git pull # 将远程repo更新到本地,实际上是git fetch + git merge

• git push # 将本地commit更新到远程repo

 

分⽀合并

• git pull # 将远程repo更新到本地,实际上是git fetch + git merge

• git branch

• git checkout -b mybranch # 创建⾃⼰的⼯作分⽀

• git add/git commit A2/A3

• git checkout master

• 当其他⼩伙伴在你git push之前已经更新过远程repo,这时你git push时可能会失败,因为在master上发⽣了分 叉,要⾸先git pull。

• git merge mybranch # 将⾃⼰的⼯作合并到master,并尽快更新到远程repo。如果不幸其他⼩伙伴的更新和你 本地的commit有冲突(都修改了同⼀位置),需要先处理冲突

• git push # 将本地commit更新到远程repo,

 

Git Rebase

• 在分⽀上完成⾃⼰的⼯作之后,为了让log记录将来更容易回朔参考,需要⽤git rebase重整⼀下

• git pull # 将远程repo更新到本地,实际上是git fetch + git merge

• git checkout -b mybranch # 创建⾃⼰的⼯作分⽀

• git add/git commit A2/A3。。。

• git rebase

• git rebase --continue

• git checkout master

• git pull

• git merge mybranch

• git push # 将本地commit更新到远程repo

 

fork + pull request

• 在github.com上还提供了⼀种基于Web的分叉合并⽅法,具体步骤如 下:

• 1、在github.com上使⽤fork创建⼀个版本库;

• 2、像第⼆关⼀样在⾃⼰fork的远程版本库上独⾃⼯作;

• 3、在github.com上创建⼀个pull request提交给原版本库

 

 

Vim

vi/vim的三种模式

• 命令模式(Command mode),⽤户刚刚启动vi/vim,便进⼊了命令模式。此状态 下敲击键盘动作会被vim识别为命令,⽽⾮输⼊字符。⽐如我们此时按下i,并不会 输⼊⼀个字符,i被当作了⼀个命令。命令模式只有⼀些基本的命令,因此仍要依 靠底线命令模式输⼊更多命令

• 输⼊模式(Insert mode),在命令模式下按下i就进⼊了输⼊模式,按ESC退出输⼊ 模式,切换到命令模式。

• 底线命令模式(Last line mode),在命令模式下按下:(英⽂冒号)就进⼊了底线 命令模式。底线命令模式可以输⼊单个或多个字符的命令,可⽤的命令⾮常多。基 本的命令有q(退出程序)、w(保存⽂件)等。按ESC键可随时退出底线命令模 式

 

 

 

移动光标

• h 或 向左箭头键(←) 光标向左移动⼀个字符

• j 或 向下箭头键(↓) 光标向下移动⼀个字符

• k 或 向上箭头键(↑) 光标向上移动⼀个字符

• l 或 向右箭头键(→) 光标向右移动⼀个字符

• 如果你将右⼿放在键盘上的话,你会发现 hjkl 是排列在⼀起的,因此可以使⽤这 四个按钮来移动光标。 如果想要进⾏多次移动的话,例如向下移动 30 ⾏,可以 使⽤ "30j" 或 "30↓" 的组合按键, 亦即加上想要进⾏的次数(数字)后,按下动作即 可

• n<space> 那个 n 表示『数字』,例如 20 。按下数字后再按空格键,光标会向右移动这⼀⾏的 n 个字符。例如 20<space> 则光 标会向后⾯移动 20 个字符距离。

• 0 或功能键[Home] 这是数字『 0 』:移动到这⼀⾏的前⾯字符处 (常⽤)

• $ 或功能键[End] 移动到这⼀⾏的后⾯字符处(常⽤)

• H 光标移动到这个屏幕的上⽅那⼀⾏的第⼀个字符

• M 光标移动到这个屏幕的中央那⼀⾏的第⼀个字符

• L 光标移动到这个屏幕的下⽅那⼀⾏的第⼀个字符

• G 移动到这个档案的后⼀⾏(常⽤)

• nG  n为数字。移动到这个档案的第 n ⾏。例如 20G 则会移动到这个档案的第 20 ⾏

• gg 移动到这个档案的第⼀⾏,相当于 1G 啊! (常⽤)

• n<Enter> n 为数字。光标向下移动 n ⾏(常⽤)

 

三种模式切换

• i, I 进⼊输⼊模式(Insert mode):

• i 为『从⽬前光标所在处输⼊』, I 为『在⽬前所在⾏的第⼀个⾮空格符处开始输⼊』。 (常⽤)

• a, A 进⼊输⼊模式(Insert mode):

• a 为『从⽬前光标所在的下⼀个字符处开始输⼊』, A 为『从光标所在⾏的后⼀个字符处开始输⼊』。(常⽤)

• o, O 进⼊输⼊模式(Insert mode):

• 这是英⽂字⺟ o 的⼤⼩写。o 为『在⽬前光标所在的下⼀⾏处输⼊新的⼀⾏』; O 为在⽬前光标所在处的上⼀⾏输⼊新的⼀⾏!(常 ⽤) • r, R 进⼊取代模式(Replace mode):

• r 只会取代光标所在的那⼀个字符⼀次;R会⼀直取代光标所在的⽂字,直到按下 ESC 为⽌;(常⽤)

• [Esc] 退出编辑模式,回到⼀般模式中(常⽤)

• 编辑模式在vi画⾯的左下⻆处会出现『--INSERT--』或『--REPLACE--』的字样

 

 

• :w 将编辑的数据写⼊硬盘档案中(常⽤)

• :w! 若⽂件属性为『只读』时,强制写⼊该档案。不过,到底能不能写⼊, 还是跟你对该档 案的档案权限有关啊!

• :w [filename] 将编辑的数据储存成另⼀个档案(类似另存新档)

• :q 离开 vi (常⽤)

• :q! 若曾修改过档案,⼜不想储存,使⽤ ! 为强制离开不储存档案。

• 注意⼀下啊,那个惊叹号 (!) 在 vi 当中,常常具有『强制』的意思~

• :wq 储存后离开,若为 :wq! 则为强制储存后离开 (常⽤)

 

 

Regular Expression 

 

 

 

 

 

 

 

 

posted @ 2020-03-30 20:58  lyp1020k  阅读(277)  评论(0编辑  收藏  举报