git命令笔记

131 阅读1分钟
// 查询修改 user.name user.email
git config user.name // 查询 user.name
git config user.email // 查询 user.emial
git config --global user.name XXXX // 修改user.name为XXXX
git config --global user.email XXXX // 修改user.name为XXXX
// --global 为 全局标识

// 创建本地分支
git checkout -b fenzhi1 // 以当前所在分支创建并切换到fenzhi1
git checkout -b fenzhi2 origin/fenzhi2 // 获取远程fenzhi2到本地fenzhi2且切换和创建
git push --set-upstream origin fenzhi1 // 将当前分支提交到远程并且将远程fenzhi1与当前分支绑定

git pull --rebase

git merge fenzhi3 // 将本地fenzhi3的代码合并到当前所在分支
git cherry-pick <commitHash> // 将此<commitHash>代表的提交中的代码拉取到当前所在分支,放在暂存区中

git commit --amend // 将暂存区的文件和上一次提交的文件进行整合并生成一个新的提交记录,将上一次的提交记录覆盖, 会进入编辑模式
git commit --amend -m '提交注释' // 会直接提交不会进入编辑模式

git reset --soft HEAD^  // 撤销未push的commit的修改到暂存区

git branch -d 'fenzhi'  // 删除本地分支

// .gitignore 文件对已经被 Git 跟踪的文件是不起作用的。如果需要忽略这些文件,需要先使用 git rm --cached <file> 命令取消跟踪,然后再添加忽略规则。

// 查看在哪个 commit 中删除了哪些文件。
git log --diff-filter=D --summary
// 这个命令会检出该 commit 的上一个提交中的文件,因为我们是在该 commit 中删除的文件,所以需要在上一个 commit 才能恢复出文件。
git checkout $commit~1 filename

// yarn 在vscode中无权限,在cmd中执行
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser