git 将远程仓库和本地仓库建立连接
git remote add <name> <url> 给远程仓库起的名字和仓库的url 这个名字在你本地就代表的远程仓库
git remote -v 获取拉取和推送远程仓库的url
如果本地仓库有过代码的提交,那么这时在和远程仓库建立连接在拉去会出现这个错误
PS C:\Users\15328\OneDrive\桌面\files\gitee\gitlearn> git pull origin master
From https://gitee.com/ha-big-brother/new-java-code
* branch master -> FETCH_HEAD
fatal: refusing to merge unrelated histories
因为本地仓库和远程仓库没有相同的父提交记录,是俩个完全不同的分支
那么就需要强制合并,忽略之前提交的版本
git pull origin master --allow-unrelated-histories
git 配置文件的查看
git config -l
设置
git config [--global] user.name 'xx'
删除
git config [--global] --unset user.name
查看git的提交日志
git log
加上 --pretty=oneline 只有一行输出美观些 加上 --graph 会显示出分支的提交图
看到提交id对应的提交信息
git cat-flie -p <提交id>
git add . 提交到暂存区
git commit -m '' 提交到本地仓库
git push <远程仓库名字> <本地分支> 推送到远程仓库
代码回退
如果写的还没有add
git checkout -- file 回退到最近的一次add 或者 commit
如果add到暂存区了但是没有commit本地仓库
git reset --mixed file
如果add了页commit到本地仓库了
git reset --hard HEAD^ 回退到上一个版本 ^^是上俩个
git中删除文件 如果是直接delete删除文件,git还是会跟踪这个文件 他会一位是误删了
git status 中会告诉你
使用 git restore xxx 可以恢复
删除是使用
git rm xx 这样会放弃文件的追踪 然后在删除就彻底删除了
分支
git分支能将修改的内容按分支隔离起来
git branch xx 创建分支
git checkout xx 切换到xx分支
git checkout -b xx 创建xx分支并且使用
分支的合并
git merge xx 将xx分支合并到当前分支 xx不能为当前分支
如果分支之间的由了冲突会报这个错误
Auto-merging put.txt
CONFLICT (content): Merge conflict in put.txt
Automatic merge failed; fix conflicts and then commit the result.
第二行标识我put.txt 出现了冲突,需要自己手动解决 修改这个put.txt 文件并重新add和commit就好
分支的删除
git branch -d xx
将工作区中的修改缓存
git stash
查看所有缓存的修改
git stash list
恢复修改
git satsh pop
也可以使用
git stash apply 只不过他不会删除缓存需要手动删除
git stash drop
git 还可以为命令配置别名
git config [--global] alias.st status 之后git st == git status