欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Git命令使用与常见问题解决 git 

程序员文章站 2024-01-01 23:47:22
...
Git命令使用:
以CTS工程为例:
1.首先安装Git客户端,然后配置生成sshKey。
首先从服务器上下载代码到本地,如下命令:
git clone git@192.168.2.96:tx/cts.git
默认是下载的master分支下的代码,如果需要切换到某个分支下,需要进入到cts目录下,然后git checkout feature_20160701_yanshi,表示进入到feature_20160701_yanshi这个分支下,然后git pull,就可以获取该分支下所有最新文件。
然后可以在本地做开发,如果需要提交:
git add .     将默认当前目录下所有文件(包括新增的(加入git管理),更改的,删除的(已经被git管理的)),如果没有新增文件可以省略此步骤。
git commit -a -m "注释"   提交到本地仓库(注释就是你本次改动的内容)
git push 提交到远程仓库

常见问题解决:
1.1 git stash 命令使用
git stash save –a   ‘111111’  保存当前的工作现场
如果某个分支下正开发一半,需要切换到另一个分支下,又不想提交本地修改的代码,这时可以用git stash 命令来保存。(git stash save  -a 11111111 以11111111为提示名字保存)
如果在一个分支上想要恢复某一个工作现场怎么办:先用git stash list查看stash队列。确定要 恢复哪个工作现场 到当前分支。然后用git stash pop stash@{num}。num 就是你要恢复的工作现场的编号。
1.2切换分支报错解决

此时需要进入git版本控制的目录下,才能正确切换分支。正确做法如下:

1.3 Git push 错误解决
当出现Updates were rejected because the tip 时,由于在本地某个分支下开发,开发完了,要提交,git push 报错,Updates were rejected because the tip,意思是说远程资源库中有最新的文件了,你的本地文件不是最新的,需要更新(pull)。如下:
这时候需要备份自己修改的文件,然后下载当前分支的最新版本,在此基础上做二次开发,然后git commit –m  ‘’  ,最后git push 即可。

解决方法是:
1.先将自己修改的文件一一备份,然后到另外一个新的目录下,去执行
git clone git@192.168.2.96:tx/cts.git
命令,然后切换到你要开发的分支下面(feature_20160706_userManage),执行git pull  命令,保证获取当前分支下的最新版本,
2.然后导入eclipse里面,将自己修改的文件做二次开发(第一步有自己备份的文件)。
3.然后进入git命令行,切换到当前分支下(git checkout feature_20160706_userManage
),执行 git commit –m ‘注释’命令,然后执行git push即可提交都远程分支上。
验证方法:
新建一个目录,执行git clone git@192.168.2.96:tx/cts.git  命令,然后切换到feature_20160706_userManage分支下,执行git pull命令,看看自己修改的代码是不是最新版本。

1.4 git status命令详细解释
git status命令可以列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交(git commit)的文件.。
比如;
git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       modified:   2.txt
#
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#       modified:   1.txt
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       1.log
命令中”Changes to be committed“中所列的内容是在Index中的内容,commit之后进入Git Directory。
命令中“Changed but not updated”中所列的内容是在Working Directory中的内容,add之后将进入Index。
命令中“Untracked files”中所列的内容是尚未被Git跟踪的内容,add之后进入Index
通过git status -uno可以只列出所有已经被git管理的且被修改但没提交的文件


相关标签: git

上一篇:

下一篇: