git随笔
1.本地仓库提交
-
git init(在当前项目路径下,初始化本项目的本地仓库) -
git add .(点表示当前项目路径下所有的文件,添加到本地缓存区) -
git commit -m '注释'(提交到本地仓库)
2.和远端创建链接和推
-
git remote add origin https://github.com/huangxia666/xxx(和远端git仓库建立连接)(修改本地config配置文件)git remote -v查看本地仓库和远端git仓库映射状态 -
git push -u origin master将本地仓库提交到远端仓库的master分支上(首次提交要加-u)
3.本地创建分支提交到远端分支
-
git branch查看分支 -
git branch xxx本地创建分支 -
git checkout xxx切到xxx分支 -
git push -u origin xxx提交到远端xxx分支上
4.拉代码
-
git clone https://github.com/huangxia666/xxx.git拉取远端仓库xxx全部分支和代码 -
git pull本地先切到指定分支上,pull的时候就会拉取指定分支上的代码(先和远端仓库建立连接)
git branch //查看本地所有分支
git branch -r //查看远程所有分支
git branch -a //查看本地和远程的所有分支
git branch <branchname> //新建分支
git branch -d <branchname> //删除本地分支
git branch -d -r <branchname> //删除远程分支,删除后还需推送到服务器
git push origin:<branchname> //删除后推送至服务器
git branch -m <oldbranch> <newbranch> //重命名本地分支
/**
*重命名远程分支:
*1、删除远程待修改分支
*2、push本地新分支到远程服务器
*/
//git中一些选项解释:
-d
--delete:删除
-D
--delete --force的快捷键
-f
--force:强制
-m
--move:移动或重命名
-M
--move --force的快捷键
-r
--remote:远程
-a
--all:所有
git fetch是将远程主机的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中。
而git pull 则是将远程主机的最新内容拉下来后直接合并,即:git pull = git fetch + git merge,这样可能会产生冲突,需要手动解决。
-
生成ssh密钥
1.进入到
~/.ssh路径下2.运行命令
ssh-keygen -t rsa -C 'xxx.@yy.zzz'3.在.ssh文件生成了两个文件 id_rsa.pub 和id_rsa,将id_rsa.pub中的内容加到git服务器上
-
冲突
![]()
解决办法:
git pull origin xxx后面增加--allow-unrelated-histories把两段不相干的 分支进行强行合并

git撤销放弃本地修改
-
1.未使用
git add缓存代码git checkout -- filename
git checkout . # 放弃所有文件的修改 -
2.已经
git add缓存了代码git reset HEAD filepathname # 放弃指定文件的缓存
git reset HEAD . # 放弃所有文件的缓存
# 再执行1
git checkout -- filename # 或者 git checkout . -
3.已经
git commit提交的代码git reset --hard HEAD^ # 回退到上一次commit的状态
git reset --hard commitid # 回退到定义的提交版本
git commit --amend 既可以对上次提交的内容进行修改,也可以修改提交说明。
git push --force
git tag 2.1
我们常常在代码封板时,使用git 创建一个tag ,这样一个不可修改的历史代码版本就像被我们封存起来一样,不论是运维发布拉取,或者以后的代码版本管理,都是十分方便的
git push --tags


浙公网安备 33010602011771号