yum -y install git
安装路径默认在/usr/libexec
linux下安装git-CSDN博客
git version
git config --global user.name "XXXX"
git config --global user.email "[email protected]"
git config --global user.password tianshan
git config --list (查看是否配置成功)
cd /home/www #进入工作目录
mkdir blog #创建项目
cd blog #进入项目
git init #初始化项目
git status #查看git状态
1.生成公钥:
ssh-keygen -t rsa -C "邮箱@qq.com"
查看公钥:
cat /root/.ssh/id_rsa.pub
将公钥复制到码云
码云这个添加公钥的页面在
设置/安全设置/ssh公钥中
git config --global user.password tianshan
这里演示修改本地仓库的用户名和邮箱:
git config --replace-all user.name "name"
git config --replace-all user.email "[email protected]"
vim .gitignore
*.txt //忽略所有以.txt结尾的文件不跟踪
!a.txt //可以跟踪a.txt
/vendor //不跟踪vendor文件夹
/vendor/*.php //不跟踪vendor 下的所有php文件
========================================================================
git reset --hard HEAD^
注意本地代码会被回退到上次修改前,如果本地已有修改注意备份。
之后,使用 –force 或 -f 参数强制push
git push origin master --force
再看git log就没有上次的提交了
========================================================================
文件在没有没有add之前 被修改,可以git checkout 恢复
git checkout file.txt
(本地文件)
========================================================================
rm -rf 1.txt 文件被误删后
git status 会有 deleted 提示
找回被误删文件 :
git checkout 1.txt
add 是添加跟踪文件
git add 之后,后悔了,不想跟踪1.txt
git rm --cached 1.txt //远程代码会被删除
=========================================================================
git add 后,想把文件恢复之前的样子
git restore remote.txt
========================================================================
git reset --hard commit_id
文件恢复到pull状态 文件内容会丢失 慎用
=======================================================================
git update-index --assume-unchanged /path/file #设置忽略跟踪
git update-index --no-assume-unchanged /path/to/file #恢复跟踪
git update-index --skip-worktree /path/file
assume-unchanged 与 skip-worktree 的区别如下:
assume-unchanged:这个会关闭文件与远程仓库的跟踪,认为这个文件远程仓库是不会修改,所以每次pull都是本地的文件
skip-worktree:这个不会关闭文件与远程仓库的跟踪,只是告诉Git不要跟踪对本地文件/文件夹的更改。如果远端仓库内容有变化,pull时会拉取最新的变化,并提示冲突,但因为没有跟踪本地更改,所以需要no-skip-worktree再合并最新的变化。