cmd/powershell常用命令 git常用命令

cmd/powershell:
1.新建文件夹: mkdir directoryName
2.新建文件:
cmd: type nul>fileName (空文件)
powershell: new-item fileName -type file
echo "content">fileName (有内容的文件)

3.删除文件夹: cmd: del directoryName
powershell: rmdir directoryName
4.删除文件: cmd: del fileName
powershell:rm/del fileName

5.重命名文件/文件夹: cmd: rename old newFileName/directoryName
powershell: mv old newFileName / mv directoryName newDirectoryName

6.打开文件: powershell: get-content fileName

7.清空面板: clear
8.查看当前文件夹下所有文件列表:dir


git:
本地操作:
git status: 查看状态(共:本地未跟踪、暂存、已提交三种状态)
git add: 本地添加到暂存,对文件进行跟踪
git diff: 本地文件相对于暂存文件的区别
git diff --cached: 暂存和最后提交的文件之间的区别
git difftool / git difftool --cached : 使用vim工具对比文件(:qa+enter退出)
git commit -m "描述信息": 暂存的文件提交到版本库 、如果忘记添加注释::wq 退出添加注释状态
git commit --amend -m "描述内容": 对上次提交未push的版本进行修补(会改变上一次的提交记录id,描述信息被覆盖)
git rm fileName: 移除本地文件并将该文件取消跟踪状态
git rm fileName --cached: 删除对该文件的跟踪,保留本地文件
git mv oldName newName: 重命名文件(相当于在本地删掉文件,再增加文件,再add;文件处于没有状态图标的状态,实际上已经在暂存区域)
git log / git log -number: 查看提交记录,-number查看最近几次
git log --patch -number: 查看每一个文件详细提交信息
git log --stat -number: 查看修改文件名字列表提交信息
git log --author="author": 查看某个人的提交记录
git show 版本号: 查看某一次的详细文件修改提交信息
git reflog : 查看所有的操作记录;与git log 的区别:git log 只是提交记录
q: 退出查看历史
git commit --amend: 覆盖提交,将需要提交未提交的文件添加到上一次的提交中
git restore HEAD fileName: 取消暂存文件(git status的提示中)
git checkout --fileName: 取消对未暂存的本地文件的修改,实际是用最近一次提交的版本覆盖本地的文件(git status的提示中)
git checkout .: 取消素有本地未提交的修改

远程操作:
git remote: 获取所有远程仓库信息
git remote -v: 获取所有远程仓库的简写以及URL信息
git remote show remoteName: 查看某一个远程仓库的详细信息
git remote add remoteName url: 添加远程仓库
git remote rename oldName newName: 修改远程仓库的简写名字
git remote rm remoteName: 移除某个远程仓库
git remote set-url origin http://xxxxxx 修改远程地址
git clone: 克隆远程仓库内容到本地
git branch: 查看当前分支
git branch -a: 查看所有分支,本地以及远程
git branch -v: 查看本地分支,并显示最近一次的提交信息
git checkout branch: 切换分支
git fetch <remoteName/url>: 从远程仓库更新代码,可以是URL或者在添加远程仓库时起的名字也可以省略;该操作不会自动合并或修改本地文件,需要手动合并。
git pull: 从远程仓库更新代码,不同于git fetch remote,它会自动尝试合并到当前分支(与本地已commit的版本库进行对比合并),相当于git fetch + git merge。理论上说,执行该命令之前需要先查看当前状态,将为add和commit的文件提交到本地仓库之后,再执行该命令进行拉取跟本地仓储库合并。
git push: 推送本地内容到远程仓库
git stash save message: 暂存当前分支的某些未修改完的文件
git stash list: 所有的暂存文件列表
git stash apply stash@{num}: 检出某一次的暂存文件到工作目录

git rm --cached xxx:已经add的文件中删除某个文件


git常见问题:
1.将某个分支的某一次提交合并到另一个分支?
git log: 查看想要合并的某次提交版本号(比如在dev分支提交的)
git checkout test: 切换到想要合并到的分支
git cherry-pick 版本号: 将其他分支的某一次提交合并到当前分支
git push: 提交到远程(之前的操作都是在本地仓库)

2.commit之后想增加新的修改一并提交?
git add --all
git commit -m "第一次提交"
(修改添加新的修改之后)...
git add --all
git commit --amend -m "两次最终的描述信息"

3.当前分支未修改完的情况下切换到其它分支,其它分支看不到未修改完的文件?
git stash save '説明': test1分支未add的情况下将未修改完的文件暂存起来
git checkout test2
test2分支操作文件,操作完成
git checkout test1
git stash list: 查看所有的暂存文件列表
git stash apply stash@{num}: 检出某一次的缓存文件到工作目录 (根据提示,有时:git stash apply num)

4.不提交当前更改的情况下拉取远程代码:
git stash save '説明'
git pull
git stash list
git stash apply stash@{num} (有时:git stash apply num)

4.查看某一个文件的修改提交记录:
git log -p 文件名 // 显示所有的提交记录
git show 版本号 文件名 // 查看某个版本下的某个文件的详细信息

5.只提交部分修改或者添加的代码:

git status -s 查看仓库状态

git add src/components/文件名 添加需要提交的文件名(加路径--参考git status 打印出来的文件路径)

git stash -u -k 忽略其他文件,把现修改的隐藏起来,这样提交的时候就不会提交未被add的文件

git commit -m "哪里做了修改可写入..."

git pull 拉取合并

git push 推送到远程仓库

git stash pop 恢复之前忽略的文件(非常重要的一步)

原文地址:https://www.cnblogs.com/xuchao-blogs/p/13838909.html