常用命令
git merge 分支名
将分之名的代码合并到当前分之中,例如现在是在master下, git merge develop, 则是将develop中的代码合并到master中git config --global credential.helper store
解决每次提交代码都需要输入账号密码问题git reset --hard commit_id 提交id
回退到某个提交的版本git remote -v
查看git的链接地址gitk
非常之重要 可视化查看所有提交记录
添加tag
git tag -a v你的版本号 -m "tag描述信息: "
- 推送本地所有tag
git push origin --tags
将远程分之拉取到本地
第一种方式
git checkout -b 本地分支名 origin/远程分支名
例如: 如远程仓库里有个分支develop,我本地没有该分支,我要把develop拉到我本地:git checkout -b develop origin/develop
)
第二种方式
-
git fetch origin dev
dev是分之名称 git checkout -b dev origin/dev
diff的使用
git diff
查看所有代码修改记录git diff > test.diff
将所有修改的代码生成一个test.diff文件, 存放在该项目的目录下git diff ComponentSDK/src/main/AndroidManifest.xml
查看该目录下的修改记录git diff ComponentSDK/src/main/AndroidManifest.xml > test.diff
将AndroidManifest的修改记录生成一个test.diff文件git diff ffd98b291e0caa6c33575c1ef465eae661ce40c9 b8e7b00c02b95b320f14b625663fdecf2d63e74c
查看某两个版本之间的差异
常见的错误
一. 清除电脑储存的码云用户名和密码
git config --system --unset credential.helper
二. 解决Git在添加ignore文件之前就提交了项目无法再过滤问题
由于未添加ignore文件造成提交的项目很大(包含生成的二进制文件)。所以我们可以将编译生成的文件进行过滤,避免添加到版本库中了。
首先为避免冲突需要先同步下远程仓库
git pull
2.1 在本地项目目录下删除缓存
git rm -r --cached .
2.2 新建.gitignore文件
在项目的根目录下面新建.gitignore文件并添加相应的过滤规则
2.3 再次add所有文件
输入以下命令,再次将项目中所有文件添加到本地仓库缓存中
git add .
2.4 再次添加commit ,这次commit是为了说明添加ignore文件的。
git commit -m "add ignore"
2.5 最后提交到远程仓库即可
git push
三. 如果你 clone全部的项目到本地,却少了分之, 用 git clone -b 分之名称
,将分之拉取到本地
四. 码云上的文件超过了1G, 实际clone下来的文件才200多M, 需要到仓库管理, 进行GC回收处理
五.如何从git的历史记录中彻底删除文件或文件夹
第一步: 通过命令行修改本地的历史记录
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch walterlv.xml' --prune-empty --tag-name-filter cat -- --all