[Git] visual studio 2015와 Git 연동하기
🌈 프로그래밍/Git

[Git] visual studio 2015와 Git 연동하기

반응형

안녕하세요? 수구리입니다.

 

이번 포스팅에서는 visual studio 2015에서 작업하고 있는 프로젝트들을 관리하기 위해서

 

Github과 연동하고, 커밋과 푸시 그리고 필요 없는 파일들은 제외하고 Git에 올려보는 포스팅을 해보려고 합니다.

 

시작하기 전에..

Git이 기본적으로 설치가 되어 있어야 합니다!

 

또한, visual studio 2015에서 수행하였으므로 약간 다를 수 있습니다.

 

 

visual studio 2015와 Github 연동하기

  1. visual studio 상단 메뉴 [도구] - [옵션] 클릭

2. [소스 제어] - [플러그 인 선택] 후, 현재 소스 제어 플러그인을 [Git]으로 바꾸고 [확인]

3. visual studio에 "팀 탐색기"가 만들어졌는지 확인!

4. 만약 없다면 상단에서 [보기] - [팀 탐색기] 클릭

5. 기존 repo 주소 또는 새로운 레포지토리 생성 후 주소 복사

 

 

6. [팀 탐색기] - [연결 관리]에서 [복제본] 클릭 후 복사한 주소 입력 후 [복제] 버튼 클릭

7. 해당 복제본을 더블 클릭 후 새로 만들기 or 열기로 프로젝트 open

8. [변경 내용] 클릭 (변경 내용이 없다면 하위에 아무것도 없습니다.)

9. commit 메시지 입력 후, 커밋! (커밋 방법은 편한 대로 선택)

10. [동기화] - [푸시] 버튼 클릭

11. GitHub 로그인 - [확인]

12. push가 되었는지 본인의 GitHub 페이지에서 확인

 

 

수정한 것 반영하기

1. 솔루션 탐색기에서 수정한 후, [팀 탐색기]로 이동

2. [변경 내용] 클릭

3. commit 메시지를 입력 후, 커밋!

4. [동기화] - [푸시] 진행

5. 수정사항이 커밋되었는지 확인!

 

 

MFC git Ignore Pattern

1. 기존에 연동되어있는 Git에서 [설정] 클릭

2. [리포지토리 설정] 클릭

3. 무시 및 특성 파일에서 gitIgnore 추가 클릭 (생성 후 모습)

 

4. 위의 사진에서 [편집]을 클릭하고 아래와 같이 수정!

 

참고 : (위의 단계로 ignore 파일을 만들면 기본적으로 무시할 파일들이 설정되어 있지만,, 저는 더 추가해서 아래와 같이 설정해주었습니다.)

## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.

# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates

# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
[Xx]64/
[Xx]86/
[Bb]uild/
bld/
[Bb]in/
[Oo]bj/

# Visual Studio 2015 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

# NUNIT
*.VisualState.xml
TestResult.xml

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c

# DNX
project.lock.json
artifacts/

*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc

# Chutzpah Test files
_Chutzpah*

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.ipch
*.exp
*.iobj
*.ipdb
*.tlog
*.log
*.res
*.idb
*.lastbuildstate

# Directories
ipch
Debug
Release

# Executables
*.exe
*.dll
*.lib

# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap

# TFS 2012 Local Workspace
$tf/

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user

# JustCode is a .NET coding add-in
.JustCode

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*

# MightyMoose
*.mm.*
AutoTest.Net/

# Web workbench (sass)
.sass-cache/

# Installshield output folder
[Ee]xpress/

# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html

# Click-Once directory
publish/

# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml

# TODO: Un-comment the next line if you do not want to checkin 
# your web deploy settings because they may include unencrypted
# passwords
#*.pubxml
*.publishproj

# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config
# NuGet v3's project.json files produces more ignoreable files
*.nuget.props
*.nuget.targets

# Microsoft Azure Build Output
csx/
*.build.csdef

# Microsoft Azure Emulator
ecf/
rcf/

# Microsoft Azure ApplicationInsights config file
ApplicationInsights.config

# Windows Store app package directory
AppPackages/
BundleArtifacts/

# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/

# Others
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.pfx
*.publishsettings
node_modules/
orleans.codegen.cs

# RIA/Silverlight projects
Generated_Code/

# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm

# SQL Server files
*.mdf
*.ldf

# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings

# Microsoft Fakes
FakesAssemblies/

# GhostDoc plugin setting file
*.GhostDoc.xml

# Node.js Tools for Visual Studio
.ntvs_analysis.dat

# Visual Studio 6 build log
*.plg

# Visual Studio 6 workspace options file
*.opt

# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions

# LightSwitch generated files
GeneratedArtifacts/
ModelManifest.xml

# Paket dependency manager
.paket/paket.exe

# FAKE - F# Make
.fake/

이렇게 gitignore 설정을 하고 난 뒤, push를 진행해 보았다.

 

깔 - 끔하게 필요 없는 파일들을 제외하고 올라간 모습이다!

반응형