Git常用操作

来源:互联网 发布:ci框架数据库配置 编辑:程序博客网 时间:2024/06/15 13:36


以前公司版本控制工具用的都是svn,没有接触过git,现在这家公司用的是git,都是敲命令,不过敲命令的感觉挺爽的。用了一段时间git的分支功能很强大,比如一个小团队中的几个人要做某个功能模块,则可以在master主分支上新建一个模块分支(比如user),然后负者这个模块中的几个人可以在user分支新建基于自己的个人开发分支,每个人开发完后,然后merge到user分支,再merge到master主分支,这样能减少开发中代码的冲突次数,提高开发效率。


克隆分支


1. clone远程分支到本地在本地主机生成一个目录,与远程主机的版本库同名。
    git clone https://github.com/jquery/jquery.git
2. clone远程分支到本地制定本地目录名

    git clone <版本库的网址> <本地目录名>


创建及删除分支



1. 查看分支
   git branch
2. 创建新分支
    git branch  <新分支名>
    然后push代码到分支
    git push --set-upstream origin <分支名>    
3. 切换分支
    git checkout <分支名>
4.  删除本地分支
    git branch -d <分支名>
    强制删除分支
   git branch -D <分支名>
5. 删除远程分支

   git push origin  :<分支名>

 

提交修改文件到远程分支


1. 查看工作目录中的文件与缓存的状态
  git status
2. 添加工作目录中的文件到缓存中
  git add  <文件名>  
  或者添加所有 
  git add .
3. 提交工作目录中的文件到缓存中
   git commit -m '本次提交说明信息'
4. 显示已写入缓存与已修改但尚未写入缓存的改动的区别
    git diff  <文件名>
5. 尚未缓存的改动
   git diff 
6. 查看已缓存的改动
    git diff --cached
7. 查看已缓存的与未缓存的所有改动
    git diff HEAD
8. 取消缓存已缓存的内容
    git reset HEAD
9. 将文件从缓存区移除,同时删除文件

   git rm  <文件名>


版本回滚


1. 回滚版本根据commitid
      git reset --hard <commit_id>
      git push origin HEAD --force
2. 回滚到上一版本
     git reset --hard HEAD~1
     git push origin HEAD --force
     或者第n个版本
     git reset --hard HEAD~n
     git push origin HEAD --force

git merge碰到冲突,取消merge


1. 取消merge

   git merge --abort



合并多个commit

1. git压缩
      git rebase -i HEAD~2
 2. 要合并的commit的pick改为squash(第二行)
   pick 5e187c7dbe8    add center style indent  
   pick 6d577eb3440    add center style  

3. 同步到远程分支
       git push -f
4.压缩有冲突的话,取消合并
       git rebase  --abort

提交内容到最后一个commit

1. 提交修改
     git commit --amend
 2.强制提交
    git push -f 


初始化本地项目推送到远程新建的git项目

echo "# dubbo-test" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/renhuijun/dubbo-test.git
git push -u origin master


2 0
原创粉丝点击