1.安装git
sudo apt-get install git
git init (通过git init命令把这个目录变成Git可以管理的仓库)
2.设置用户名和email
git config --global user.name "sunmlight(用户名)"
git config --global user.email "sunm8917@gmail.com" 执行完成之后该目录下会新增加一个.gitconfig文件
3.为GitHub账号添加SSH Keys
创建SSH key
ssh-keygen -t rsa -C "sunm8917@gmail.com"
然后用cat查看id_rsa.pub文件内的内容,粘帖到github帐号管理的添加SSH key界面中。
cat ~/.ssh/id_rsa.pub
添加到GitHub: 登录GitHub> 点击“Settings”> SSH keys>Add SSH key
4.git 问题 warning: push.default 尚未设置
matching 参数是 Git 1.x 的默认行为,其意是如果你执行 git push 但没有指定分支,它将 push 所有你本地的分支到远程仓库中对应匹配的分支。 而 Git 2.x 默认的是 simple,意味着执行 git push 没有指定分支时,只有当前分支会被 push 到你使用 git pull 获取的代码 从上述消息提示中的解释,我们可以修改全局配置,使之不会每次 push 的时候都进行提示。对于 matching 输入如下命令即可:
$ git config --global push.default matching 而对于 simple ,请输入: $ git config --global push.default simple
git基本命令
git clone 项目地址
cd 项目地址
vim notes.md
git add *
git commit -m "备注"
git push
git git diff <filename>:查看文件在工作目录与暂存区的差别
git log查看提交历史
git pull:拉下最新的代码
Git status查看文件状态(是否被提交)
git rm 文件名 删除文件
git show 查看改变
git status 查看本份之文件情况
查看本地分支 git branch ;
查看远程分支 git branch -r
查看所属分支 git branch -a
创建分支:git branch <name>
切换分支:git checkout <name>
切换到<name>
分支
创建+切换分支:git checkout -b <name>
新建并切换到<name>
分支
删除分支:git branch -d <name>
合并某分支到当前分支:git merge <name>
将<name>
分支合并到当前分支
查看提交记录:$ git log;
强推到远程:$ git push origin HEAD --force
1、切换到要操作的项目文件夹 命令行 : $ cd <ProjectPath>
2、查看项目的分支们(包括本地和远程) 命令行 : $ git branch -a
3、删除本地分支 命令行 : $ git branch -d <BranchName>
4、删除远程分支 命令行 : $ git push origin --delete <BranchName>
git删除远程仓库文件
git rm --cached "文件路径",不删除物理文件,仅将该文件从缓存中删除;一种是 git rm --f "文件路径",不仅将该文件从缓存中删除,还会将物理文件删除(不会回收到垃圾桶)。假如你有文件不小心commit到了服务器那么你想要删除它,可以使用:git rm -- cached "路径+文件名" ;git commit -m "delete file" ;git push;git rm -r "路径+文件名" ;git commit -m "delete file";git push
【本地代码库回滚】:
git reset --hard commit-id :回滚到commit-id,讲commit-id之后提交的commit都去除
git reset --hard HEAD~3:将最近3次的提交回滚
【远程代码库回滚】:
操作步骤:
1、git checkout the_branch
2、git pull
3、git branch the_branch_backup //备份一下这个分支当前的情况
4、git reset --hard the_commit_id //把the_branch本地回滚到the_commit_id
5、git push origin :the_branch //删除远程 the_branch
6、git push origin the_branch //用回滚后的本地分支重新建立远程分支
7、git push origin :the_branch_backup //如果前面都成功了,删除这个备份分支