git入门笔记
设置Windows
- 清理桌面、任务栏、window画面
- 用户目录 C:\Users\name
C盘中除了用户目录外其余的文件均为系统文件,不可动。用户目录为个人所用 - 用户目录下级文件夹可移动到其他盘
- 显示文件后缀名
Windows常用快捷键
- win+Desktop 展示桌面
- win+tap 不常用的窗口切换(可在此操作下创建新的桌面)
- win+方向键 移动窗口
- win+ctrl+方向键 切换桌面
- ctrl+y 重做
- ctrl+r/F5 刷新页面
- ctrl+p 打印
打印网页时,需另存为PDF格式,打印格式设置A3/A4,边距无,勾上背景图形
设置chrome
- Sources面板中的Snippets,在此可以保存好用的代码片段
随时随地保存代码并测试
chrome快捷键
- 鼠标中键单击 打开/关闭
- CTRL+T 打开标签
- CTRL+shift+T 撤销关闭
- CTRL+点击 在新标签打开
- CTRL+W 关闭当前标签
- CTRL+Reload/F5 刷新
- CTRL+Location 输入网址
- CTRL+shift+Inspector/F12 打开开发者工具
- alt+左右 前进后退
- alt+回车 在新标签打开
- shift+回车 在新窗口打开
- CTRL+shift+delete 删除历史浏览数据
安装VSCode cmder 配置环境
配置VSCode
- 汉化
ctrl+shift+p搜索Chinese,安装汉化插件,转后重启VSCode - 配置
设置自动保存 Auto Save:onFocusChange
VSCode插件
- Code Spell Checker
防止代码单词拼错 - Git Easy
方便操作git
配置Cmder
设置快捷键
- ctrl+T 新开标签
- alt+D 分屏
- alt+shift+D 垂直分屏
- ctrl+w 关闭当前标签
配置Node.js
npm i -g nrm nrm ls nrm use taobao
安装yarn
- 官网下载
- nrm的淘宝源改动会自动作用到yarn上
使用yarn config list 查看 registry
常用编程英语
英文 | 翻译 | 英语 | 翻译 |
---|
file | 文件 | link | 链接 | make | 制作 | find | 找到 | move | 动 | echo | 回声 | remove | 删除 | touch | 触摸/创建 | copy | 拷贝 | change | 改变 | list | 列表 | directory | 目录/文件夹 | recursive | 递归 | force | 强制 |
命令缩写
英文 | 缩写命令 | 英语 | 缩写命令 |
---|
file | | link | ln | make | mk | find | find | move | mv | echo | echo | remove | rm | touch | touch | copy | cp | change | cd中的c | list | ls | directory | cd中的d | recursive | | force | |
Cmder中ctrl+c用于中断命令
增删改查
进入命令行的第一件事
cd ~
查:查看
- pwd 查看当前目录的绝对路径
- ls 查看当前目录内容
- ls 路径 查看指定目录内容
ls默认不查看.开头命名的文件
- 查看文件内容
- cat 路径 展示全部内容
- head 路径 只展示前十行内容
head 路径 -n 14 展示14行内容 - tail 路径 只展示后十行内容
tail 路径 -n 14 展示14行内容 - less 路径 展示全部内容
如果内容过多,可滚动查看(↑/J向上滚动,↓/K向下滚动)Q键退出(如果有选中的部分,需在没有选中的情况下按Q才可退出)
增:创建文件
- 创建文件
eg:touch 1.txt - echo 内容 > 文件
将内容写进文件里
- 如果新命令 echo 新内容 > 文件 新内容覆盖原来的内容
- 如果追加新内容 echo 新内容 >> 文件
- 如果添加两行内容 echo -e “one\ntwo” >> 文件
- 创建目录a
eg:mkdir a
- 创建多层目录 a/b/c/d
eg:mkdir -p a/b/c/d - 复制文件 (将文件1里的内容复制到文件2)eg:
echo 内容 >文件1 cp 文件1 文件2
cp -r a b
删:删除文件
rm 文件1
rm -r a
改:修改文件或目录
- 修改文件内容(使用VSCode打开文件进行内容修改)
code 文件
使用默认程序打开文件
start 文件
echo ‘’ > 文件
- 移动文件/目录
mv 文件 a 将文件移动到a里 mv a/文件 . 将文件移动到当前目录 - 重命名文件/目录
mv 文件1 文件2 - 修改文件最后更新时间
touch 文件 ls -l 查看更新时间
touch
- 在没有该命名文件时创建该文件
- 有该文件时修改文件最后更新时间
- &&操作 当第一条命令成功之后,执行另一条
;操作 不管第一条命令是否成功,都执行另一条
把命令变成文件
- 创建一个文件,无所谓后缀
- 添加执行权限(Windows没用该概念)
chmod +x 文件名 - 将要执行的命令写进文件里
- 运行 sh正确的路径 即可执行 sh为bash
如果添加了shebang,删掉sh也可执行 - 必须用正常的路径(即加 ./ eg:./文件名)
- 如果加了PATH,可以不加./
- 可以只用文件名就能执行
多行命令写进一个文件里即为 脚本文件
一些小知识
- cd xxx 进入当前目录下的xxx目录
- cd /xxx 进入根目录下的xxx目录
- 相对路径是相对于当前目录的,不能以/开头
- 绝对路径是从根目录开始,一定以/开头
~ 也是绝对路径,因为~是C:/Users/name这类路径的缩写
git本地仓库
git可以实现多版本切换
git 配置
git config --global user.name 英文名 git config --global user.emall 邮箱 git config --global push.default simple git config --global core.quotepath false git config --global core.editor “code --wait” git config --global core.autocrlf input
git config --global --list
git本地仓库
git init
- 提交(选择哪些变动是需要提交的,路径可以是绝对/相对路径 .和*)
git add 路径
git add 处理的是文件变化,而不是文件,比如删除一个文件后,依然需要用 git add 来添加到待提交区
- .gitignore文件里放不需要提交的文件名(此文件里写入文件名的文件都不会被提交)
- git status 查看当前状态
git status -sb 简化状态 - 提交并说明理由,字符串里如果有空格,就需要用引号包起来
git commit -m 字符串
- 建议提交使用下面命令,可以帮助回顾刚刚做了哪些步骤,可以迫使把理由写的更为详细一些
git commit -v
- 可以通过 git log 查看提交过的版本信息
- 回到之前的版本
git reset --hard xxxxxx xxxxxx为版本号,可以只用前六位
使用 git log 查看版本信息,在回前面的版本后,之后的版本信息都会消失 使用 git reflog 可以查看所有历史记录
同时进行两种页面设计的情况
- git branch x 创建平行时间线x,即创建分支x
- git checkout x 切换到x分支
git branch 基于当前commit创建一个新的时间线 在哪个分支提交,代码就出现在哪个分支 直接输入命令行 git branch 返回当前所有分支,此时所在分支前由*标记
git checkout 用于切换分支 如果当前目录有没有提交的代码,只要跟其他分支没有冲突,就无需理会
- git merge 分支名 将另一个分支合并到当前分支
若合并时由冲突,比如
冲突解决后切记要提交 git add 对应文件 git commit 此时的提交不加任何参数,默认合并分支
合并完分支删除无用的分支 git branch -d 分支名
解决冲突的办法
- 发现冲突
· 在合并分支的时候,得到conflict提示 · 使用 git status 查看哪些文件冲突了 - 解决冲突
· 依次打开每个文件 · 搜索==== · 在上下两个分支部分中选择需要保留的代码 · 删除不用的代码,======,>>>>,<<<<这些标记 · git add 对应文件 · 再次 git status 解决下一个冲突 · 直到没有冲突,运行 git commit
git远程仓库——GitHub
ssh key 验证身份
- 生成ssh key
运行 ssh-keygen -t rsa -b 4096 -C 邮箱 一直回车,直到没有任何提示 cat ~/.ssh/id_rsa.pub 得到公钥内容,粘贴到GitHub 在GitHub设置页面填入公钥 如果是不同电脑,要些上新的ssh key(一机一key)
上传/下载代码
上传代码
- git remote add origin git@xxxxxx 此句代码直接在Github里复制
在本地添加远程仓库地址 origin是远程仓库的默认名字,建议不要更改 建议不要使用https://地址,因为每次都需要密码 - git branch -M main
将分支master重命名为main(GitHub仅支持main) - git push -u origin main
推送本地master分支到远程origin的main分支 如果提示应该 git pull 一下,就 git pull 一下(git pull 是先把远程分支合并到本地对应的分支,如果远程没有更新过,才可省略 git pull) ==-u origin main 是设置上游分支,设置过一次就可以,下次直接上传代码直接 git push
上传其他分支
法一
git push origin x:x
法二
git checkout x git push -u origin x
下载代码
- git clone git@xxxxxx
git@xxxxxx目标路径,在Github里直接复制链接 可以基于下载的代码继续编辑 - git clone
- git clone git@?/xxx.git
会在当前目录下创建一个xxx目录 xxx.git是本地仓库 一般需要接一句 cd xxx - git clone git@?/xxx.git yyy
会在本地新建yyy目录,记得 cd yyy - git clone git@?/xxx.git .
不会新建目录,使用当前目录容纳代码和 .git 当前目录最好是个空目录
上传到两个远程仓库
- 上传到第二个远程仓库
git remote add origin2 git@xxxxxx git push -u origin2 main
git 高级操作
touch ~/.bashrc echo ‘alias ga=“git add”’>> ~/.bashrc echo ‘alias gc=“git commit -v”’>> ~/.bashrc echo ‘alias gl=“git pull”’>> ~/.bashrc echo ‘alias gp=“git push”’>> ~/.bashrc echo ‘alias gco=“git checkout”’>> ~/.bashrc echo ‘alias gst=“git status -sb”’>> ~/.bashrc alias glog="git log --graph --pretty=format:’%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’ --abbrev-commit – | less" source ~/.bashrc
如何藏起代码
- git stash 隐藏
- git stash pop 弹出
|