Gemfile, Bundler 개념
레일즈 프로젝트를 처음 만들고 그 프로젝트의 폴더로 들어가보면 Gemfile이라는 파일이 자동으로 만들어져 있습니다.
이 파일은 다양한 젬(Gem)들을 등록하는 파일로서 텍스트 파일입니다.
※ 젬(Gem): 다른 언어에서의 라이브러리의 개념
루비의 다양한 젬들은 http://rubygems.org 에서 만나볼 수 있습니다.
그리고 필요한 젬(Gem)들은 Gemfile에 등록해놓고 사용하면 됩니다.
이 Gemfile 부분은 Python에서 라이브러리들을 pip freeze로 requirements.txt에 빼주는 것과 비슷하게 생각했습니다.
아무래도 라이브러리의 의존성이 중요하다보니 이런 비슷한 기능들이 생기지 않았나 싶습니다.
그리고 Bundler라는 것이 있습니다.
이것도 역시 Gem의 의존성 관리를 위해 존재하는 것입니다.
Gemfile은 간단한 의존성 정의 파일이지만,
Bundler는 Gemfile에 정의된 젬(Gem)들의 의존성을 파악해서 올바른 젬(Gem)을 사용할 수 있게끔 해주는 명령어입니다.
Bundler는 설치하는 방법도 쉽습니다.
gem install bundler
필요한 젬(Gem)이 있는데 이름을 모르겠다면?!
위에서 언급한 http://rubygems.org 에 들어가서 검색을 해주고 들어가보면...
요렇게 Install 메뉴에 있는 것을 Copy 해준다음 커맨드창에 입력을 해주게되면 설치가 됩니다!
그리고 Bundler의 기능은 Gemfile이 있는 경로에서 bundle install 명령어를 입력하면 Gemfile에 정의된 젬(Gem)들을 사용할 수 있게됩니다.
이렇게 설치를 할 수 있습니다 :D
사용법은!
Gemfile에 필요한 젬(Gem) 추가 -> bundle install -> 필요했던 젬(Gem) 사용!
요렇게 진행하시면 됩니다.
자 그럼 실제로 젬(Gem)을 추가해보도록 하겠습니다.
새로 만든 프로젝트에 원하는 젬을 하나 추가해보도록 하겠습니다.
rubygems.org 에 들어가서 Bootstrap 이라고 검색을 한 뒤에 bootstrap-sass 라는 Gem 을 찾아줍니다.
이렇게 찾아준 뒤에 클릭해서 들어가봅니다.
들어가보면 오른쪽에 gemfile에 추가하고 Gem을 install 할 수 있게끔 만들어 놓았습니다.
이걸로 쉽게 설치하고 사용할 수 있겠습니다.
Gemfile에 저것을 복사, 붙여넣기 해줍니다.
이렇게 마지막에 한 줄 추가해주시면 됩니다.
그리고 Gem을 install합니다.
요렇게 명령어도 마찬가지로 복사, 붙여넣기를 하고 입력을 해주시면 위와 같이 성공적으로 설치가 됩니다.
이렇게 추가를 하면 됩니다!
읽어주셔서 감사합니다 :)
'Ruby > Ruby on Rails' 카테고리의 다른 글
프레임워크의 장단점과 라이브러리와의 차이점 (0) | 2016.02.13 |
---|---|
퍼펙트 루비 온 레일즈 구입! (0) | 2016.02.13 |
새로운 Project 만들기 (0) | 2016.01.26 |
루비 온 레일즈 기본 개념잡기 (0) | 2016.01.18 |
루비, 루비 온 레일즈 설치하기(윈도우) (7) | 2016.01.17 |