当咱们须要删除暂存区
或分支
上的文件, 同时工做区也不须要这个文件了, 可使用
1 git rm file_path 2 git commit -m 'delete somefile' 3 git push
当咱们须要删除暂存区
或分支
上的文件, 但本地又须要使用, 只是不但愿这个文件被版本控制, 可使用
git rm --cached file_path git commit -m 'delete remote somefile' git push
一、初始化:一个项目只执行一次 只要有.git隐藏文件夹就ok了html
git init 或者 git clone url
二、为远程github仓库生成别名(remote-name就是远程仓库的别名)这一步执行一次也能够git
git remote add <remote-name> <url> git remote add origin git@github.com:yourName/yourRepo.git # origin是默认的远程仓库别名 (这个须要在git init 以后才能实现,方便push和clone)
三、忽略提交文件github
四、新建分支branch1 团队的话不要使用默认的主分支(很大可能你没有主分支的push权限)post
#git branch -a 查看全部分支(包括远程和本地分支) #git branch 分支名 查看本地分支 #git branch -r 分支名 查看远程分支 git branch branch1 #新建一个本地分支
五、切换到branch1分支(默认是在master分支)fetch
git checkout branch1
六、修改代码后并放入暂存区 对于全部分支而言, 工做区和暂存区是公共的 因此add以后切换分支后的新分支也是有add后的状态的url
git add ./test.txt
七、提交到本地仓库(注意在此以前必定要切换分支)spa
git commit -m "描述" #error: pathspec 'demo' did not match any file(s) known to git. 缺乏参数也会报这个错的 另"双引号变为单引号也会报这个错
准备提交到远程仓库版本控制
八、拉取要提交分支的最新的内容日志
git fetch 远程仓库名 远程的分支名:本地分支名 #本地分支名不存在的话会新建
九、检查代码冲突code
git diff tmp // 将当前分支和tmp进行对比
十、合并分支
git merge tmp //合并tmp分支到当前分支
迷之自信肯定代码不会冲突(好比就一我的贡献代码)能够将八、九、10合并
git fetch <remote_store_short_name> <remote_branch>[:local_branch]
十一、同步到远程仓库
#将本地仓库同步到github远程仓库中 git push [remote-name] [branch-name] git push origin master #把本地分支推到远程仓库origin(origin为别名)的master默认主分支下 #注意:没有第一步设置别名那么须要改为这样: git push https://github.com/lichihua/codedemogit.git master
查看提交日志
git log --oneline 或者
git reflog
注意HEAD@{3}: HEAD@{回退到这个版本所需的步数}:
黄色的就是截取后额版本号
版本回退
git reset --hard 71ad2d8
当咱们须要删除暂存区
或分支
上的文件, 同时工做区也不须要这个文件了, 可使用
1 git rm file_path 2 git commit -m 'delete somefile' 3 git push
当咱们须要删除暂存区
或分支
上的文件, 但本地又须要使用, 只是不但愿这个文件被版本控制, 可使用
git rm --cached file_path git commit -m 'delete remote somefile' git push