diff --git a/README.md b/README.md index 67eff950..895ee3d3 100644 --- a/README.md +++ b/README.md @@ -53,265 +53,266 @@ Quick Reference 坑已挖,需要您的参与完善和[贡献](./docs/quickreference.md)!🙏 -[Ansible](./docs/ansible.md) -[CMake](./docs/cmake.md) -[C#](./docs/cs.md) -[Django](./docs/django.md) -[FFmpeg](./docs/ffmpeg.md) -[Flask](./docs/flask.md) -[FastAPI](./docs/fastapi.md) -[Flutter](./docs/flutter.md) -[Gitlab CI/CD](./docs/gitlab-ci.md) -[LaTeX](./docs/latex.md) -[Lua](./docs/lua.md) -[NestJS](./docs/nestjs.md) -[MATLAB](./docs/matlab.md) -[Oracle](./docs/oracle.md) -[Pytorch](./docs/pytorch.md) -[Vue 3](./docs/vue.md) -[Github Copilot](./docs/github-copilot.md) -[Chown](./docs/chown.md) -[R 语言](./docs/r.md) -[Elixir](./docs/elixir.md) +[Ansible](./docs/ansible.md) +[CMake](./docs/cmake.md) +[C#](./docs/cs.md) +[Django](./docs/django.md) +[FFmpeg](./docs/ffmpeg.md) +[Flask](./docs/flask.md) +[FastAPI](./docs/fastapi.md) +[Flutter](./docs/flutter.md) +[Gitlab CI/CD](./docs/gitlab-ci.md) +[LaTeX](./docs/latex.md) +[Lua](./docs/lua.md) +[NestJS](./docs/nestjs.md) +[MATLAB](./docs/matlab.md) +[Oracle](./docs/oracle.md) +[Pytorch](./docs/pytorch.md) +[Vue 3](./docs/vue.md) +[Github Copilot](./docs/github-copilot.md) +[Chown](./docs/chown.md) +[R 语言](./docs/r.md) +[Elixir](./docs/elixir.md) [Tauri](./docs/tauri.md) -[Docker Compose](./docs/docker-compose.md) +[Docker Compose](./docs/docker-compose.md) ## 编程 -[Bash](./docs/bash.md) -[Powershell](./docs/powershell.md) -[C 语言](./docs/c.md) -[C#](./docs/cs.md) -[C++](./docs/cpp.md) -[Dart](./docs/dart.md) -[Docker](./docs/docker.md) -[Docker Compose](./docs/docker-compose.md) -[Dockerfile](./docs/dockerfile.md) -[Django](./docs/django.md) -[Elixir](./docs/elixir.md) -[Erlang](./docs/erlang.md) -[Flask](./docs/flask.md) -[FastAPI](./docs/fastapi.md) -[Flutter](./docs/flutter.md) -[Golang](./docs/golang.md) -[GraphQL](./docs/graphql.md) -[Hook](./docs/hook.md) -[Java](./docs/java.md) -[Julia](./docs/julia.md) -[Kotlin](./docs/kotlin.md) -[Kubernetes](./docs/kubernetes.md) -[LaTeX](./docs/latex.md) -[Laravel 8](./docs/laravel.md) -[Markdown](./docs/markdown.md) -[MATLAB](./docs/matlab.md) -[PHP](./docs/php.md) -[Python](./docs/python.md) -[R 语言](./docs/r.md) -[Ruby](./docs/ruby.md) -[Rust](./docs/rust.md) -[Scala](./docs/scala.md) -[Swift](./docs/swift.md) -[SwiftUI](./docs/swiftui.md) -[Spring Boot](./docs/springboot.md) -[Lua](./docs/lua.md) -[Pytorch](./docs/pytorch.md) -[Jupyter](./docs/jupyter.md) -[Minio](./docs/minio.md) +[Bash](./docs/bash.md) +[Powershell](./docs/powershell.md) +[C 语言](./docs/c.md) +[C#](./docs/cs.md) +[C++](./docs/cpp.md) +[Dart](./docs/dart.md) +[Docker](./docs/docker.md) +[Docker Compose](./docs/docker-compose.md) +[Dockerfile](./docs/dockerfile.md) +[Django](./docs/django.md) +[Elixir](./docs/elixir.md) +[Erlang](./docs/erlang.md) +[Flask](./docs/flask.md) +[FastAPI](./docs/fastapi.md) +[Flutter](./docs/flutter.md) +[Golang](./docs/golang.md) +[GraphQL](./docs/graphql.md) +[Hook](./docs/hook.md) +[Java](./docs/java.md) +[Julia](./docs/julia.md) +[Kotlin](./docs/kotlin.md) +[Kubernetes](./docs/kubernetes.md) +[LaTeX](./docs/latex.md) +[Laravel 8](./docs/laravel.md) +[Markdown](./docs/markdown.md) +[MATLAB](./docs/matlab.md) +[PHP](./docs/php.md) +[Python](./docs/python.md) +[R 语言](./docs/r.md) +[Ruby](./docs/ruby.md) +[Rust](./docs/rust.md) +[Scala](./docs/scala.md) +[Swift](./docs/swift.md) +[SwiftUI](./docs/swiftui.md) +[Spring Boot](./docs/springboot.md) +[Lua](./docs/lua.md) +[Pytorch](./docs/pytorch.md) +[Jupyter](./docs/jupyter.md) +[Minio](./docs/minio.md) ## 配置 -[INI](./docs/ini.md) -[JSON](./docs/json.md) -[TOML](./docs/toml.md) -[YAML](./docs/yaml.md) +[INI](./docs/ini.md) +[JSON](./docs/json.md) +[TOML](./docs/toml.md) +[YAML](./docs/yaml.md) ## 前端 -[前端导航](./docs/feds.md) -[Electron](./docs/electron.md) -[Emmet](./docs/emmet.md) -[ES 6](./docs/es6.md) -[HTML](./docs/html.md) -[HTML Canvas](./docs/canvas.md) -[JavaScript](./docs/javascript.md) -[jQuery](./docs/jquery.md) -[Next.js](./docs/nextjs.md) -[RxJS](./docs/rxjs.md) -[React](./docs/react.md) -[React Router](./docs/reactrouter.md) -[React Native](./docs/react-native.md) -[TypeScript](./docs/typescript.md) -[Tauri](./docs/tauri.md) -[Vue 2](./docs/vue2.md) -[Vue 3](./docs/vue.md) -[ htmx](./docs/htmx.md) -[Pinia](./docs/pinia.md) +[前端导航](./docs/feds.md) +[Electron](./docs/electron.md) +[Emmet](./docs/emmet.md) +[ES 6](./docs/es6.md) +[HTML](./docs/html.md) +[HTML Canvas](./docs/canvas.md) +[JavaScript](./docs/javascript.md) +[jQuery](./docs/jquery.md) +[Next.js](./docs/nextjs.md) +[RxJS](./docs/rxjs.md) +[React](./docs/react.md) +[React Router](./docs/reactrouter.md) +[React Native](./docs/react-native.md) +[TypeScript](./docs/typescript.md) +[Tauri](./docs/tauri.md) +[Vue 2](./docs/vue2.md) +[Vue 3](./docs/vue.md) +[ htmx](./docs/htmx.md) +[Pinia](./docs/pinia.md) ## CSS -[CSS 3](./docs/css.md) -[Styled Components](./docs/styled-components.md) -[Stylus](./docs/stylus.md) -[Sass](./docs/sass.md) -[Less.js](./docs/lessjs.md) -[Tailwind CSS](./docs/tailwindcss.md) -[StyleX](./docs/stylex.md) +[CSS 3](./docs/css.md) +[Styled Components](./docs/styled-components.md) +[Stylus](./docs/stylus.md) +[Sass](./docs/sass.md) +[Less.js](./docs/lessjs.md) +[Tailwind CSS](./docs/tailwindcss.md) +[StyleX](./docs/stylex.md) ## Nodejs -[Express.js](./docs/expressjs.md) -[Ejs](./docs/ejs.md) -[Jest](./docs/jest.md) -[Koa.js](./docs/koajs.md) -[Lerna](./docs/lerna.md) -[npm](./docs/npm.md) -[NestJS](./docs/nestjs.md) -[PM2](./docs/pm2.md) -[package.json](./docs/package.json.md) -[Yarn](./docs/yarn.md) -[nvm](./docs/nvm.md) -[pnpm](./docs/pnpm.md) -[Bun](./docs/bun.md) +[Express.js](./docs/expressjs.md) +[Ejs](./docs/ejs.md) +[Jest](./docs/jest.md) +[Koa.js](./docs/koajs.md) +[Lerna](./docs/lerna.md) +[npm](./docs/npm.md) +[NestJS](./docs/nestjs.md) +[PM2](./docs/pm2.md) +[package.json](./docs/package.json.md) +[Yarn](./docs/yarn.md) +[nvm](./docs/nvm.md) +[pnpm](./docs/pnpm.md) +[Bun](./docs/bun.md) ## 命令 -[ADB, Android Debug Bridge](./docs/adb.md) -[Ansible](./docs/ansible.md) -[Awk](./docs/awk.md) -[Curl](./docs/curl.md) -[Chmod](./docs/chmod.md) +[ADB, Android Debug Bridge](./docs/adb.md) +[Ansible](./docs/ansible.md) +[Awk](./docs/awk.md) +[Curl](./docs/curl.md) +[Chmod](./docs/chmod.md) [Chown](./docs/chown.md) -[Cron](./docs/cron.md) -[CMake](./docs/cmake.md) -[CMD](./docs/cmd.md) -[.NET CLI](./docs/dotnet-cli.md) -[Find](./docs/find.md) -[FFmpeg](./docs/ffmpeg.md) -[Gdb](./docs/gdb.md) -[Glances](./docs/glances.md) -[Grep](./docs/grep.md) -[Htop](./docs/htop.md) -[iptables](./docs/iptables.md) -[jq](./docs/jq.md) -[Justfile](./docs/justfile.md) -[Lsof](./docs/lsof.md) -[Make](./docs/make.md) -[Netstat](./docs/netstat.md) -[Netcat](./docs/netcat.md) -[OpenSSL](./docs/openssl.md) -[ps](./docs/ps.md) -[Pandoc](./docs/pandoc.md) -[Sed](./docs/sed.md) -[Systemd](./docs/systemd.md) -[SSH](./docs/ssh.md) -[Screen](./docs/screen.md) -[Sysdig](./docs/sysdig.md) -[Tmux](./docs/tmux.md) -[Taskset](./docs/taskset.md) -[tar](./docs/tar.md) -[Yazi](./docs/yazi.md) -[Zip](./docs/zip.md) -[FTP](./docs/ftp.md) +[Cron](./docs/cron.md) +[CMake](./docs/cmake.md) +[CMD](./docs/cmd.md) +[.NET CLI](./docs/dotnet-cli.md) +[Find](./docs/find.md) +[FFmpeg](./docs/ffmpeg.md) +[Gdb](./docs/gdb.md) +[Glances](./docs/glances.md) +[Grep](./docs/grep.md) +[Htop](./docs/htop.md) +[iptables](./docs/iptables.md) +[jq](./docs/jq.md) +[Justfile](./docs/justfile.md) +[Lsof](./docs/lsof.md) +[Make](./docs/make.md) +[Netstat](./docs/netstat.md) +[Netcat](./docs/netcat.md) +[OpenSSL](./docs/openssl.md) +[ps](./docs/ps.md) +[Pandoc](./docs/pandoc.md) +[Sed](./docs/sed.md) +[Systemd](./docs/systemd.md) +[SSH](./docs/ssh.md) +[Screen](./docs/screen.md) +[Sysdig](./docs/sysdig.md) +[Tmux](./docs/tmux.md) +[Taskset](./docs/taskset.md) +[tar](./docs/tar.md) +[Yazi](./docs/yazi.md) +[Zip](./docs/zip.md) +[FTP](./docs/ftp.md) ## 工具 [ChatGPT](./docs/chatgpt.md) -[Emacs](./docs/emacs.md) -[Linux Command](./docs/linux-command.md) -[Mitmproxy](./docs/mitmproxy.md) -[nginx](./docs/nginx.md) -[RegEx 正则表达式](./docs/regex.md) -[Semver 语义化版本](./docs/semver.md) -[Vim](./docs/vim.md) -[XPath](./docs/xpath.md) +[Emacs](./docs/emacs.md) +[Linux Command](./docs/linux-command.md) +[Mitmproxy](./docs/mitmproxy.md) +[nginx](./docs/nginx.md) +[RegEx 正则表达式](./docs/regex.md) +[Semver 语义化版本](./docs/semver.md) +[Vim](./docs/vim.md) +[XPath](./docs/xpath.md) ## 软件包管理器 -[APT](./docs/apt.md) -[Conan](./docs/conan.md) -[Conda](./docs/conda.md) -[CocoaPods](./docs/cocoapods.md) -[Cargo](./docs/cargo.md) -[Homebrew](./docs/homebrew.md) -[Pacman](./docs/pacman.md) -[pip](./docs/pip.md) -[YUM](./docs/yum.md) -[SDKMAN](./docs/sdkman.md) +[APT](./docs/apt.md) +[Conan](./docs/conan.md) +[Conda](./docs/conda.md) +[CocoaPods](./docs/cocoapods.md) +[Cargo](./docs/cargo.md) +[Homebrew](./docs/homebrew.md) +[Pacman](./docs/pacman.md) +[pip](./docs/pip.md) +[YUM](./docs/yum.md) +[SDKMAN](./docs/sdkman.md) +[uv](./docs/uv.md) ## Git 版本控制 -[Git](./docs/git.md) -[Github](./docs/github.md) -[Github Copilot](./docs/github-copilot.md) -[Github CLI](./docs/github-cli.md) -[Github Actions](./docs/github-actions.md) -[Gitlab CI/CD](./docs/gitlab-ci.md) -[Subversion (SVN)](./docs/subversion.md) +[Git](./docs/git.md) +[Github](./docs/github.md) +[Github Copilot](./docs/github-copilot.md) +[Github CLI](./docs/github-cli.md) +[Github Actions](./docs/github-actions.md) +[Gitlab CI/CD](./docs/gitlab-ci.md) +[Subversion (SVN)](./docs/subversion.md) ## 数据库 -[MySQL](./docs/mysql.md) -[MongoDB](./docs/mongodb.md) -[Oracle](./docs/oracle.md) -[PostgreSQL](./docs/postgres.md) -[Redis](./docs/redis.md) -[Elasticsearch](./docs/elasticsearch.md) +[MySQL](./docs/mysql.md) +[MongoDB](./docs/mongodb.md) +[Oracle](./docs/oracle.md) +[PostgreSQL](./docs/postgres.md) +[Redis](./docs/redis.md) +[Elasticsearch](./docs/elasticsearch.md) [Neo4j](./docs/neo4j.md) [SQLite](./docs/sqlite.md) ## 快捷键 -[Adobe Lightroom](./docs/adobe-lightroom.md) -[Adobe Photoshop](./docs/adobe-photoshop.md) -[Adobe XD](./docs/adobe-xd.md) -[Android Studio](./docs/android-studio.md) -[Blender](./docs/blender.md) -[Firefox](./docs/firefox.md) -[Finder](./docs/finder.md) -[Figma](./docs/figma.md) -[Gmail](./docs/gmail.md) -[Gitlab](./docs/gitlab.md) -[Google Chrome](./docs/google-chrome.md) -[IntelliJ IDEA](./docs/intelli-j-idea.md) -[PyCharm](./docs/pycharm.md) -[PhpStorm](./docs/phpstorm.md) -[Sketch](./docs/sketch.md) -[Sublime Text](./docs/sublime-text.md) +[Adobe Lightroom](./docs/adobe-lightroom.md) +[Adobe Photoshop](./docs/adobe-photoshop.md) +[Adobe XD](./docs/adobe-xd.md) +[Android Studio](./docs/android-studio.md) +[Blender](./docs/blender.md) +[Firefox](./docs/firefox.md) +[Finder](./docs/finder.md) +[Figma](./docs/figma.md) +[Gmail](./docs/gmail.md) +[Gitlab](./docs/gitlab.md) +[Google Chrome](./docs/google-chrome.md) +[IntelliJ IDEA](./docs/intelli-j-idea.md) +[PyCharm](./docs/pycharm.md) +[PhpStorm](./docs/phpstorm.md) +[Sketch](./docs/sketch.md) +[Sublime Text](./docs/sublime-text.md) [Vimium](./docs/vimium.md) -[VSCode](./docs/vscode.md) -[Twitter(X)](./docs/twitter.md) -[WebStorm](./docs/webstorm.md) -[Xcode](./docs/xcode.md) -[Zed](./docs/zed.md) +[VSCode](./docs/vscode.md) +[Twitter(X)](./docs/twitter.md) +[WebStorm](./docs/webstorm.md) +[Xcode](./docs/xcode.md) +[Zed](./docs/zed.md) ## 其它 -[Quick Reference](./docs/quickreference.md) -[Aspect Ratio](./docs/aspect-ratio.md) -[ASCII Code](./docs/ascii-code.md) -[Symbol Code](./docs/symbol-code.md) -[Colors Named](./docs/colors-named.md) -[HTTP 状态码](./docs/http-status-code.md) -[HTML 字符实体](./docs/html-char.md) -[ISO-3166 国家代码](./docs/iso-3166-1.md) -[ISO-639 语言代码](./docs/iso-639-1.md) -[Emoji](./docs/emoji.md) -[MIME types](./docs/mime.md) -[Resolutions](./docs/resolutions.md) -[时区列表](./docs/time-zones.md) -[常见端口对照](./docs/ports.md) +[Quick Reference](./docs/quickreference.md) +[Aspect Ratio](./docs/aspect-ratio.md) +[ASCII Code](./docs/ascii-code.md) +[Symbol Code](./docs/symbol-code.md) +[Colors Named](./docs/colors-named.md) +[HTTP 状态码](./docs/http-status-code.md) +[HTML 字符实体](./docs/html-char.md) +[ISO-3166 国家代码](./docs/iso-3166-1.md) +[ISO-639 语言代码](./docs/iso-639-1.md) +[Emoji](./docs/emoji.md) +[MIME types](./docs/mime.md) +[Resolutions](./docs/resolutions.md) +[时区列表](./docs/time-zones.md) +[常见端口对照](./docs/ports.md) ## 看到缺少什么了吗? diff --git a/assets/uv.svg b/assets/uv.svg new file mode 100644 index 00000000..b1b8097c --- /dev/null +++ b/assets/uv.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/docs/uv.md b/docs/uv.md new file mode 100644 index 00000000..b4aefaa0 --- /dev/null +++ b/docs/uv.md @@ -0,0 +1,121 @@ +uv 备忘清单 +=== + +一个用 Rust 编写的极快的 Python 包和项目管理工具 + +安装 +--- + +### 使用独立安装程序安装 + +#### macOS or Linux + +```sh +curl -LsSf https://astral.sh/uv/install.sh | sh +``` + +#### Windows + +```sh +powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" +``` + +### 通过PyPI + +```sh +# pip +pip install uv +``` + +```sh +# pipx +pipx install uv +``` + +入门 +--- + +### 创建新项目 + +```sh +# 创建一个目录作为项目的根目录 +uv init project_name +``` + +```sh +# 将当前目录作为项目的根目录 +uv init +``` + +#### 项目的结构 + +```sh +. +├── .venv # 项目的虚拟环境 +│ ├── bin +│ ├── lib +│ └── pyvenv.cfg +├── .python-version # 项目的 Python 版本 +├── README.md +├── main.py +├── pyproject.toml # 项目的元数据 +└── uv.lock # 项目的锁定文件, 用于锁定依赖版本,不应手动编辑 +``` + +### 管理项目依赖 + +#### 添加依赖 + +```sh +uv add requests +``` + +#### 指定依赖版本或替代来源 + +```sh +# 指定版本 +uv add 'requests==2.28.1' + +# 指定来源 +uv add git+https://github.com/psf/requests +``` + +#### 从`requirements.txt`迁移 + +```sh +uv add -r requirements.txt +``` + +#### 删除一个包 + +```sh +uv remove requests +``` + +#### 升级一个包 + +```sh +uv lock --upgrade-package requests +``` + +### 运行脚本 + +指定脚本运行 + +```sh +uv run main.py +``` + +指定Python版本运行 + +```sh +uv run --python 3.10 main.py +``` + +### 构建项目 + +```sh +uv build +``` + +构建结果存储在`dist`目录下