1. 配置ssh:
执行ssh-keygen 命令 一路回车 把key复制到GitLab的deploy_keys 填入New Deploy Keyvim .bashrc 为了在git中显示当前分支的名字 在最后写入:function git_branch { branch="`git branch 2>/dev/null | grep "^\*" | sed -e "s/^\*\ //"`" if [ "${branch}" != "" ];then if [ "${branch}" = "(no branch)" ];then branch="(`git rev-parse --short HEAD`...)" fi echo " ($branch)" fi}export PS1='\u@\h \[\033[01;36m\]\W\[\033[01;32m\]$(git_branch)\[\033[00m\] \$ '然后source ~/.bashrc使其生效
2. git 操作:
查看分支:git branch -a # 查看所有分支git branch -r # 查看远程分支基于某分支创建分支:git checkout xxx 分支git checkout -b xxx_new 分支删除分支:git branch -D xxx # 删除本地分支git push origin --delete xxx # 删除远程分支提交操作:git add . 或 git add -Agit commit -m "commit信息" 或git commit -am "追加的commit信息"合并commit:git rebase -i HEAD~5 表示合并之前的5个commit 不要的commit的pick改为s 保存退出(注意:第一个commit不能修改)修改commit的名字:git commit --amendgit log 查看commit记录git diff 查看文件改变合并远程代码:git fetch server developgit rebase server/develop解决rebase的冲突问题:1. 先解决冲突,删掉不需要的代码2. git add . 3. rebase --continue 就切换到了分支上,再push即可4. 如果解决了冲突又重新rebase了,git rebase --skip即可取消git的修改:git checkout -- . 清除当前已修改的信息,代码撤回到修改前回滚commit:git reset --soft HEAD~1 回滚上一个commit并保留修改git reset --hard HEAD~1 回滚上一个commit,不保留修改推送代码:git push origin xxxgit push -u origin xxx 推送并更新git push -f origin xxx 强制推送git ignore文件更新git rm -r --cached . 清空已经被gitignore忽视的文件忽略git对文件进行权限检查:git config core.filemode false