Git可以实现文件多版本的切换
首先需要运行六行配置
git config --global user.name 你的英文名
git config --global user.email 你的邮箱
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
注意:上面的英文名和邮箱跟 GitHub 没有关系,一定要运行,否则本地仓库无法建立
操作指令
git init(初始化)
创建一个.git目录(容纳代码快照)本地仓库
git add(改变、复制、标记)+路径
标记一个将要commit(发出)的文件
可以是绝对路径,也可以是相对路径或者’.‘和’‘开头的文件
注意:git add 命令也可以在删除了内容后使用
.gitignore 用于保存不需要备份或添加的文件
常见 node_modules、.DS_Store、.idea、.vscode(以.开头的文件)
git status
查看哪些文件需要发出,哪些不用
git commit -m “版本号”
发出提交,并说明提交理由,版本号中如果含有空格,要用引号包起来
ls不会输出以.开头的目录 ls -a(all)才行
git commit -v(verbose)
发出提交,会在VS code 中打开文件,在VS code中输入修改理由,可以写很长的理由;会展示行为人的改动细节 帮助回顾程序
git log
查看仓库中复制了多少份文件,只会显示之前提交的且会复用之前的内容
git reset --hard XXXXXX;
XXXXXX是提交号的前六位,前四位不重复也行,会把没有commit的文件全部删掉(add过的也会全部删掉)
git reflog
回顾所有历史提交记录
.git
目录容纳代码
git branch x(任意)
可以创造平行时间线x 术语叫做【分支】,产生一个虚拟的拷贝
基于当前的commit(快照)创建一个新的时间线(分支)
在哪个分支提交代码,代码就出现在那个分支。
get branch 不加参数 会显示有几条支线 带号的为所在位置
git checkout x
移动到这个x分支
当前目录有未提交的代码,只要跟另一个分支不冲突,则不需理会
冲突(覆盖)时无法切换版本
冲突可用 git stash 也可以合并冲突
合并
git merge
将另一个分支合并到当前分支
1.到达想要保留的分支
2.git merge 分支
发现冲突(conflict提示)
3.git status 查看冲突原因
在VScode 的界面中,开头为7个<号,结尾为7个>号,六个等于号间隔 上面为想要保留的分支 下面为要合并的
遇到conflict不要着急
保留的保留 不用的删掉 标记删掉
解决冲突后依旧需要 add 任何 commit 此时的commit不用加任何参数
history 查看操作历史
4.git status -sb查看哪些个文件冲突了
例:UU index.html 表示有两个程序都更改了
注意:以上git add 或 git commit 操作可以直接用 VScode 完成
高级操作
在cmder或者VScode中输入
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
可简化操作