关于git的操作

1,002 阅读3分钟
1.新建文件夹,在文件夹内打开终端

2.初始化本地文件夹问一个可以管理的git仓库(git init)

3.把本地仓库和远端仓库关联(git remote add origin http://10.202.184.217/fengjingyu/ftcloud.git)

4.把文件放入本地仓库

   4.1  git status
   4.2  git add .
   4.3  git commit -am "test commit."
   
5.把本地库推送到远端仓库 (git push -u origin master)

ps:如果远端仓库启用Readme文件初始化项目需要多一步操作

(git pull origin master 若有固定的提交格式需要手动编辑,按i编辑;没有直接:wq退出)


6 git push origin master

(2)如果不想关联本地master到远端master分支而是关联新分支
 2.1可以本地创建test新分支 git checkout -b test  (本地创建并切换到test新分支,等同git branch dev 和git checkout dev 组合)
 2.2 git push -u origin test(git push origin test:test)  关联本地test分支和远端test分支 (没有将自动创建并关联)


分支管理
  1:推送本地分支到远端
	git push 远端名称 本地分支名称:远端分支名称
	git push origin test:test 提交本地分支到远端,远端没有test分支讲自动新建

  2:删除远端分支
	git push origin :test 推送一个空分支到远端相当于删除了远端分支

  3:删除本地分支
	git branch -D test


合并分支git merge 分支名

常用git 命令

git commit -a 提交代码
git commit -am 提交代码
git fetch 获取某个branch在服务器上的最新状态
git rebase 合并代码
git pull 拉取远端代码
git push 提交本地代码
git log 查看提交日志
git reflog 查看所有历史提交记录
git branch/git branch -a 查看分支
git branch 分支 创建分支
git checkout 分支 切换分支
git checkout -b 分支 创建并切换分支
git merge 分支  合并分支
git add . 添加文件到git
git rebase --continue (解决rebase冲突之后)继续rebase(合并代码)
git status 列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交(git commit)的文件.
git stash 提交暂存区
git stash pop 拉区暂存区的代码
git diff 查看修改
...

版本管理
git reset --hard HEAD^   回退上一个版本
git reset --hard HEAD~3  回退上三个版本
git reset --hard 版本号  回退指定版本

the_branch分支远端版本回退
1.git checkout the_branch  //切换到需要回滚的分支
2.git pull		   //更新代码
3.git branch the_branch_copy //备份一下这个分支当前的情况
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_copy//如果前面都成功了,删除这个备份分支


git clone http://10.202.184.217/fengjingyu/ftcloud.git 初始化从代码仓库拉取项目

提交代码流程
git commit -am 提交代码
git fetch 获取某个branch在服务器上的最新状态
git rebase 合并代码
git push 提交本地代码
解决冲突
git add . 
git rebase --continue
git push 提交本地代码


--------git报错整理-------

1.fatal: unable to access '........': SSL certificate problem: self signed certificate

处理:git config --global http.sslVerify false