Edit in JSFiddle

angular.module('app', []); 

angular.module('app').controller('Github', function($scope, GithubFactory) {
           
  $scope.search = function(){
   
    GithubFactory.search($scope.repoName).then(function(data){
      
      $scope.results = data.items;
      
    });
    
  };
  
  
});

angular.module('app').factory('GithubFactory', function($http, $q){
  
  var GithubFactory = {};
  
  GithubFactory.search = function(repoName){
    
    var deferred = $q.defer();
                $http.get('https://api.github.com/search/repositories?q='+repoName+'&sort=stars&order=desc')
                    .then(function(response) {
                        deferred.resolve(response.data);
                    });
                return deferred.promise;
    
  };
  
  return GithubFactory;
  
  
});
  <body ng-app="app">
    <div ng-controller="Github">
    Repo İsmi : <input type="text" ng-model="repoName"> 
     <button ng-click=search()>Ara</button>
    
    
    <ul>
      
      <li ng-repeat="repo in results">
        
        {{repo.name}}
        
      </li>
      
      </ul>
    
      </div>
  </body>